gpt4 book ai didi

javascript - 'clearing' 对象是避免使用 hasOwnProperty 的可行方法吗?

转载 作者:行者123 更新时间:2023-11-28 02:25:29 24 4
gpt4 key购买 nike

我明白为什么即使一个人完全控制一个对象,hasOwnProperty 也是必要的,因为 Object.prototype 可能已被修改。但如果我真的想避免它,请考虑一下:

function CleanObject() {
var result = {};
for (var key in result) {
delete result[key];
}
return result;
}

// Later...

var obj = CleanObject();
for (var key in obj) {
// No hasOwnProperty check necessary
}

换句话说,我在使用属性实例之前清除它。这应该有效吗,还是我错过了一些边缘情况?

最佳答案

您还可以使用 Object.create() 语法创建一个没有属性的“干净”对象,并传入 null 作为参数。

示例:

var clean = Object.create(null);

for(var key in clean) {
//do stuff no hasOwnProperties required
}

关于javascript - 'clearing' 对象是避免使用 hasOwnProperty 的可行方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15040556/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com