我在jquery中有以下代码
var newFeeds = [];
$(data.d).each(function () {
newFeeds.push({
content: this.Name,
id: this.Id
});
});
我能够从newFeeds[0].content, newFeeds[1].content, newFeeds[2].content
访问值,但是当我尝试时
访问newFeeds[3].content
显示未定义的错误并检查typeof equals(===) undefined
,但显示Uncaught TypeError: Cannot read property 'content' of undefined
错误。我该如何避免这个错误。我在数组中只有3个元素。在Jquery中有没有办法避免这个错误,或者我可以设置非存在索引中不可用的值吗?
答案 0 :(得分:0)
您可以这样做:
var newFeeds = [];
$(data.d).each(function (val) {
if(val !== undefined) {
newFeeds.push({
content: val,
});
}
});
答案 1 :(得分:0)
i=0
while(i <= newsFeed.length)
if (newFeeds[i])
//Your code goes here
else
i++
尝试上面的操作。
答案 2 :(得分:0)
我可以从newFeeds [0] .content访问值, newFeeds [1] .content,newFeeds [2] .content但是当我试图访问时 newFeeds [3] .content显示未定义的错误并检查typeof equals(===)undefined但显示Uncaught TypeError:无法读取 财产&#39;内容&#39;未定义的错误。我该如何避免这个错误。一世 数组中只有3个元素。在Jquery中有没有办法避免 此错误或我可以设置非存在索引中不可用的值吗?
使用exports
以下是示例
检查undefined-ness不是测试密钥是否存在的准确方法。如果密钥存在但值实际上未定义怎么办?
(index_key in your_array)
"key" in your_object_or_array // true, regardless of the actual value
&#13;
答案 3 :(得分:0)
我这样做了
for (i = 0; i < 14;i++)
{
if (typeof newFeeds[i] !== undefined)
{
newFeeds.push({
content: 'NA',
id: 0
});
}
}