永远不要扩展
Object.prototype。
您的代码将发生可怕的事情。事情会破裂。您正在扩展 所有 对象类型,包括对象文字。
您可以尝试以下简单示例:
// Extend Object.prototypeObject.prototype.extended = "I'm everywhere!"; // See the resultalert( {}.extended ); // "I'm everywhere!"alert( [].extended ); // "I'm everywhere!"alert( new Date().extended ); // "I'm everywhere!"alert( 3..extended ); // "I'm everywhere!"alert( true.extended ); // "I'm everywhere!"alert( "here?".extended ); // "I'm everywhere!"而是创建一个传递对象的函数。
Object.filter = function( obj, predicate) { let result = {}, key; for (key in obj) { if (obj.hasOwnProperty(key) && !predicate(obj[key])) { result[key] = obj[key]; } } return result;};


