在 JavaScript 中,物件在儲存和操作資料方面發揮著至關重要的作用。要存取物件的屬性(鍵值對),可以使用多種方法。本文探討了檢索屬性名稱清單的有效方法,這些方法可用於多種目的。
現代瀏覽器(IE9、FF4、Chrome5、Opera12) , Safari5 ) 提供了Object.keys 方法,該方法傳回一個包含指定屬性名稱的陣列
const myObject = { ircEvent: "PRIVMSG", method: "newURI", regex: "^http://.*" }; const keys = Object.keys(myObject); console.log(keys); // ["ircEvent", "method", "regex"]
對於不支援 Object.keys 的瀏覽器,可以使用 Polyfill:
const getKeys = function(obj) { const keys = []; for (const key in obj) { keys.push(key); } return keys; } const keys = getKeys(myObject); console.log(keys); // ["ircEvent", "method", "regex"]
或者,Object.prototype 可以用一個擴展.keys() 方法:
Object.prototype.keys = function() { const keys = []; for (const key in this) { keys.push(key); } return keys; } const keys = myObject.keys(); console.log(keys); // ["ircEvent", "method", "regex"]
請注意,擴展原型可能會產生意想不到的副作用。通常建議使用 Object.keys 或 polyfill 來代替。
以上是如何在 JavaScript 中高效率檢索物件屬性名稱清單?的詳細內容。更多資訊請關注PHP中文網其他相關文章!