以指定物件為原型建立新的物件
var obj =
var obj2 = object.
create
(obj,})
obj2.age =
18//不可做任何操作,原因可看object.defineprototype
//obj2繼承了obj,所以obj2有obj的屬性
判斷是否是自有屬性,而不是繼承屬性
var obj =
var obj2 = object.
create
(obj)
obj2.age =
'18'
console.
log(obj2.
hasownprototype
('age'))
//true
console.
log(obj2.
hasownprototype
('name'))
//false
//返回的是boolean值
在乙個物件上定義乙個新屬性,或者修改乙個已經存在的屬性,並返回這個物件
var obj =
object.
defineprototype
(obj,
'age',)
object.
defineprototype
(obj,
'age',)
//只設定乙個value值,其他3個配置即為false
object.
defineprototype
(obj,
'age',,
get:
function()
})//此方法可以實現資料的雙向繫結(vue3.0以下是通過這個實現的)
返回該物件的所有屬性名(乙個表示給定物件的所有可列舉屬性的字串陣列)
var obj =
object.
keys
(obj)
//['name', 'age', '***']
返回該物件的所有屬性值(乙個包含物件自身的所有可列舉屬性值的陣列)
var obj =
object.
values
(obj)
//['南瓜', 18, 0]
拷貝物件(將所有可列舉屬性的值從乙個或多個源物件複製到目標物件),如果目標物件中的屬性具有相同的鍵,則屬性將被源物件中的屬性覆蓋。後面的源物件的屬性將類似地覆蓋前面的源物件的屬性
該屬性只能實現淺拷貝,無法實現深拷貝
var obj =
var obj2 =
object.
assign
(obj, obj2)
//obj = 返回目標物件
返回指定物件所有自身屬性(非繼承屬性)的描述物件
通過這個方法可以解決 object.assign() 無法正確拷貝 get 屬性和 set 屬性的問題 (object.getownpropertydescriptors 方法配合 object.defineproperties 方法就可以實現正確拷貝)
var obj =
var obj2 = object.
create
(obj)
obj2.age =
'18'
object.
getownpropertydescriptors
(obj2)
//age:
關於開始的那些事
人總是有惰性的,當然我自己深有體會。一直有個想法想寫寫自己的blog,但隨時間的推移,很久都沒付出行動。最近工作專案開始不那麼忙了,維護乙份自己的blog的想法愈發強烈了。想把自己的一些想法,或者看到的一些有用的東西給大家分享,也給自己留下成長的痕跡。我從小喜歡看書,各種各樣的書屬於不求甚解的狀態。...
關於coredump的那些事
今天在網上搜了一些有關coredump的知識,簡單記一下,以防忘記 core dump檔名的模式儲存在 proc sys kernel core pattern中,預設是core 主要是今天比較鬱悶,要除錯程式crash,就用ulimit c unlimited設定了一下core檔案的大小,但是測試...
關於STL 的那些事
今晚參加訓練。樹狀陣列的練習,傻乎乎的用stl做了一晚,雖然題沒做出來,不過對stl的查詢有了更深一層的理解。關於stl。輸入輸出 vector push back pop back stack push pop queue push pop 頭 front 尾 back priority queu...