javascript - 测量数组的长度,而不是 JavaScript 中的字符

标签 javascript mobile titanium string-length

我有一个关于length 函数的问题。问题是,当变量中有多个条目时,它会完美地计算长度,但对于单个条目,它会开始测量字符数而不是数组中元素的数量。我希望警报显示 1,因为只有一个条目:finance consultant,但它显示 18。

var win = Titanium.UI.createWindow({ backgroundColor:'#FFF' });
var tableView1=Titanium.UI.createTableView(); 
var Row = [];
Titanium.Yahoo.yql(
  'select * from html where url="http://..." '
  + 'and xpath="//tbody/tr/td/a/font" limit 25', 
  function(e) {
    results = e.data.font;
    results = results.content;
    alert(results.length);
    for (var i = 0; i < results.length; i++) {
      var rss = results[i];
      var rssRow = Titanium.UI.createTableViewRow({ ... });
      var titleLabel = Titanium.UI.createLabel({ ... });
      rssRow.add(titleLabel);
      Row.push(rssRow);
    };

    tableView1.setData(Row);
  });

win.add(tableView1);
win.open();

最佳答案

您可以尝试以下方法。

results = results.content;
if (typeof results === 'string')
  results = [results];
alert(results.length);

因此,现在您已将一个字符串的 result 强制为一个字符串数组。您的其余代码无需修改即可工作。

关于javascript - 测量数组的长度,而不是 JavaScript 中的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13325815/

相关文章:

javascript - 如何知道它是否真的是手机

iphone - 如何禁用 iPhone 上的自动日期链接?

Titanium SDK 5.2.2.GA 找不到 iOS 设备

android - 在android中右滑关闭窗口

javascript - ajax删除后刷新模板

Javascript循环选择所有矩形

javascript - JSON 字符串中的引号有什么规则吗?

javascript - 在 Ajax 加载时滚动到项目底部

mobile - Listview 的内容被绘制在 Flutter 下方的 UI 元素上

javascript - 修改合金项目中的小部件