中文字幕一区二区人妻电影,亚洲av无码一区二区乱子伦as ,亚洲精品无码永久在线观看,亚洲成aⅴ人片久青草影院按摩,亚洲黑人巨大videos

Object.create(null)

發(fā)布于:2021-01-29 15:43:55

0

154

0

JavaScript 編程語(yǔ)言

JavaScript或?qū)嶋H上是任何編程語(yǔ)言中最有趣的部分之一是,大量的小技巧和怪癖使該語(yǔ)言更加有趣。我最近學(xué)到了一個(gè)不錯(cuò)的事實(shí)Object.create:使用null 作為創(chuàng)建超級(jí)普通的詞典的唯一參數(shù)!

Object.create 對(duì)于原型創(chuàng)建一直是一個(gè)很棒的實(shí)用程序。雖然這是很好的,對(duì)象與創(chuàng)建Object.create 已__proto__和繼承Object 可控制的特性。如果您只是希望字典不易于受到外界的操縱該怎么辦?您可以使用Object.create(null):

let dict = Object.create(null);

// dict.__proto__ === "undefined"
// No object properties exist until you add them

由于沒(méi)有原型,因此無(wú)法從外部操縱您的Object,它盡可能保留字典的原始性!比較一下Object.create({}):

let obj = Object.create({});

// obj.__proto__ === {}
// obj.hasOwnProperty === function

Object.prototype.someFunction = () => {};

// obj.someFunction === () => {};
// dict.someFunction === undefined

傳遞Object.create 空對(duì)象允許通過(guò)來(lái)添加屬性O(shè)bject.prototype.customPropName,而您可能并不總是想要這樣。

直到最近我才知道這個(gè)技巧,但是以后會(huì)用到很多!