我正在学习JavaScript,并且在运行此代码时遇到错误时正在使用函数:
var arrayOfObjects = [{
prop1: "a",
prop2: "b"
}, {
prop1: "c",
prop2: "d"
}];
function testFunc(arrayOfObjects) {
for (var i = 0; i < arrayOfObjects.length; i++) {
arrayOfObjects[i].newFunctionProp = function() {
console.log("Hello!");
};
}
}
arrayOfObjects[0].newFunctionProp();
错误是:
TypeError: arrayOfObjects[0].newFunctionProp is not a function
当我在for循环中为该属性分配函数表达式时,有人可以解释为什么这个属性不是函数吗?