所以最后我尝试使用String.prototype
语句索引原型对象(例如:for...in
),我能够获得它的所有方法和属性。
但是现在我似乎无法像我最近尝试的那样索引原型。
let stringProto = String.prototype;
for (let i in stringProto)
console.log(i) // code not running, why? :'(
我已经检查了原型是否可以使用Symbol.iterator
进行迭代,但它仍然没有为其属性编制索引。
目标
我希望能够在JavaScript中为原型对象的每个方法/属性编制索引(我将在一个单独的私有对象中备份它们。)
原因:
String.prototype.replace = null
妨碍运行代码。答案 0 :(得分:1)
内置的原型方法是不可迭代的(参见规范)。
相反,请使用getOwnPropertyNames()
。