我正在建立一個簡單的DOM實用程序庫,類似於jQuery是ES6。Object.assign this NodeList
class jQuery {
constructor(selector) {
let elements = document.querySelectorAll(selector);
Object.assign(this, elements);
}
}
let $ = selector => new jQuery(selector);
console.log($('h1'));
我試圖合併這與我的元素,這兩種類型都是對象,但結果它只是一個空對象(this)。
但是,如果我合併this
與{ foo: 'bar' }
它的工作。
有人可以解釋我爲什麼會發生這種情況嗎?
住在https://jsbin.com/zupece/edit?js,console,output
'Object.assign(this,{elements});'只是提供您分配arraylike – NaN