不幸的是,下面的代码不会在firebug控制台上打印任何内容,也不会抛出错误,也不确定此代码有什么问题。
$(document).ready(function(){
var animals = [
{species: 'Lion', name: 'King'},
{species: 'Whale', name: 'Fail'}
];
for (var i = 0; i < animals.length; i++) {
(function (i) {
this.print = function () {
console.log('#' + i + ' ' + this.species + ': ' + this.name);
}
}).call(animals[i], i);
}
});
答案 0 :(得分:1)
您正在为.print()
数组中的每个对象分配animals
方法,但您永远不会调用该方法,因此此代码没有预期的输出。