0

这是我的 json 对象,我想在没有像 [0]、[1] 之类的数组顺序的情况下提醒它。

  var jsononj = {
    "objnew" : 
    [{testarry: "thi is my demo text" },
{testarry2: "thi is my demo text2" }
] }; 

    }

var newtest = jsononj.objnew[0].testarry;
    alert(newtest);

我想在没有 [0] 的情况下发出警报。我如何做到这一点

4

4 回答 4

1

我想这就是你要找的:

var i;
for (i = 0; i < jsonobj.objnew.length; i++) {
    if (jsonobj.objnew[i].testarry) {
        alert(jsonobj.objnew[i].testarry);
    }
}
于 2013-06-21T09:18:31.257 回答
0

那不是 JSON,那是一个 Javascript 对象。JSON 是一种用于表示数据的文本格式。

如果要查找具有特定属性的对象,请遍历数组中的对象并检查它:

var newtest = null;
for (var i = 0; i < jsononj.objnew.length; i++) {
  var obj = jsononj.objnew[i];
  if (obj.hasOwnProperty('testarry') {
    newtest = obj.testarry;
    break;
  }
}
if (newtest != null) {
  // found one
}
于 2013-06-21T09:20:17.250 回答
0

做一个 var firstOne = jsononj.objnew[0];

但如果你只是不喜欢[0] 你的线条,请扩展 Array 原型

Array.prototype.first = function () {
    return this[0];
};
var newtest = jsononj.objnew.first().testarry;
alert(newtest);

更多信息在数组中的第一个元素 - jQuery

于 2013-06-21T09:15:20.693 回答
0

这很愚蠢,但我删除了[0]

var jsononj = {
    "objnew" : [
        {testarry: "thi is my demo text" },
        {testarry2: "thi is my demo text2" }
    ]
};

var a = jsononj.objnew.shift();
alert(a.testarry);
jsononj.objnew.unshift(a);
于 2013-06-21T09:16:13.823 回答