forEach()匿名函数未定义错误

时间:2016-02-12 07:47:16

标签: javascript

我得到"未捕获的ReferenceError:我没有被定义"在chrome控制台中。 forEach出了什么问题?我在这里正确使用forEach()函数吗?谢谢。

<!DOCTYPE html>

    

<script  type="text/javascript" src="d3.min.js">

<body>


<!--Place all DOM elements here -->


<script>

//Write your code here
var data = [132,71,337,93,78,43,20,16,30,8,17,21];
//console.log(data[0]);

var donut = {key:"Glazed", value: 132};
//console.log(donut.key, donut.value);

var donuts = [
    {key:"Glazed",    value: 132},
    {key:"Jelly",     value: 71},
    {key:"Holes",     value: 337},
    {key:"Sprinkles", value: 93}
];
//console.log(donuts[1].key, donuts[1].value);
/*
for(var i = 0, len = donuts.length; i < len; i++){
    console.log(donuts[i].key, donuts[i].value);
}
*/

donuts.forEach(function(entry){
    console.log(donuts[i].key, donuts[i].value);
});

</body>

2 个答案:

答案 0 :(得分:7)

必须这样:

donuts.forEach(function(entry, i){
    console.log(donuts[i].key, donuts[i].value);
});
没有索引的

或更好:

donuts.forEach(function(donut){
    console.log(donut.key, donut.value);
});

答案 1 :(得分:0)

如果使用任何对象调用,则每个应该采用参数。使用foreach有不同的方法。此链接对您有用。Foreach different usage...

相关问题