【问题标题】:Error in reading objects from jQuery Array从 jQuery 数组读取对象时出错
【发布时间】:2017-05-12 22:11:51
【问题描述】:

我正在尝试创建一个数组并将数据添加到它的开头。然后使用 for 循环打印出所有数据。 但是,它会打印一个错误,如Uncaught TypeError: Cannot read property 'title' of undefined

var coords=new Array();

coords.unshift({tite:"sadsad asdds",artist:"Tik Taak"});
coords.unshift({title:"Heyyy sd",artist:"shahram"});
coords.unshift({title:"brahhh",artist:"Daniel"});


for(var i = 0; i <= coords.length; i++){
	console.log(coords[i].title + " - " + coords[i].artist);
};
&lt;script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"&gt;&lt;/script&gt;

如您所见,其中一项打印为undefined。我认为这就是触发错误的关键。

知道怎么解决吗?

提前致谢

【问题讨论】:

    标签: javascript jquery arrays json arrayobject


    【解决方案1】:

    忽略事实,即您的第一个对象 (title != tite) 中有一个 错字 - 在 for 循环内将 &lt;= 更改为 &lt;,否则它将返回 @987654325 @error,因为它在索引3 上查找元素,实际上并不存在。

    var coords = new Array();
    
    coords.unshift({title:"sadsad asdds",artist:"Tik Taak"});
    coords.unshift({title:"Heyyy sd",artist:"shahram"});
    coords.unshift({title:"brahhh",artist:"Daniel"});
    
    for (var i = 0; i < coords.length; i++) {
      console.log(coords[i].title + " - " + coords[i].artist);
    };
    &lt;script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"&gt;&lt;/script&gt;

    【讨论】:

      【解决方案2】:

      看起来像您的第一个数组对象,标题拼写错误。

      【讨论】:

      • 另外 for 必须是 i &lt; coords.length 否则它将转到索引 3 并导致另一个错误。
      猜你喜欢
      • 2020-07-15
      • 2021-12-02
      • 1970-01-01
      • 2020-06-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-09
      • 1970-01-01
      相关资源
      最近更新 更多