0
有沒有一種方法可以將函數添加到對象原型中,使其不會包含在循環中?將函數添加到對象原型的正確方法?
例:
Object.prototype.stuff = function(){};
var obj = {'hello':1};
for(var i in obj){
console.log(i);
}
//it will log: hello, stuff
//I'd want it to only log hello,
使用'Object.defineProperty'並設置'enumerable'如'FALSE'(這是默認值):https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty - 查看瀏覽器兼容性的底部。要麼是這樣,要麼在用'for'循環迭代時使用'hasOwnProperty':https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty。要麼是這些,要麼遍歷Object.keys(obj)'的結果:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys – Ian