ES2017指南

ECMAScript是JavaScript的基礎標準,通常縮寫為ES。了解有關ECMAScript的所有內容,以及ES2017(也稱為ES8)中加入的功能。 字串填充 Object.values() Object.entries() getOwnPropertyDescriptors() 這有什麼用處? 尾部逗號 Async函式 它們的好處 快速示例 連續使用多個Async函式 共享內存和原子操作 ECMAScript 2017是ECMA-262標準的第8版(也常簡稱為ES2017或ES8),於2017年6月定案。 與ES6相比,ES8針對JavaScript來說是一個很小的更新,但它仍然引入了非常有用的功能: 字串填充 Object.values() Object.entries() Object.getOwnPropertyDescriptors() 函式參數列表和呼叫中的尾部逗號 Async函式 共享內存和原子操作 字串填充 字串填充的目的是將字符添加到字串中,使其達到特定長度。 ES2017引入了兩個String方法:padStart()和padEnd()。 padStart(targetLength [, padString]) padEnd(targetLength [, padString]) 範例用法: padStart() ‘test’.padStart(4) ‘test’ ‘test’.padStart(5) ’ test’ ‘test’.padStart(8) ’ test’ ‘test’.padStart(8, ‘abcd’) ‘abcdtest’ padEnd() ‘test’.padEnd(4) ‘test’ ‘test’.padEnd(5) ‘test ’ ‘test’.padEnd(8) ‘test ’ ‘test’.padEnd(8, ‘abcd’) ‘testabcd’ Object.values() 此方法返回包含所有對象自有屬性值的陣列。 用法: const person = { name: 'Fred', age: 87 } Object.values(person) // ['Fred', 87] Object....

如何在 JavaScript 中遍歷對象的屬性

這是非常常見的任務:在 JavaScript 中遍歷對象的屬性。 如果你有一個對象,你不能只使用 map()、forEach() 或 for..of 循環來遍歷它。 你會得到錯誤: const items = { 'first': new Date(), 'second': 2, 'third': 'test' } map() 會給出 TypeError: items.map is not a function: items.map(item => {}) forEach() 會給出 TypeError: items.forEach is not a function: items.forEach(item => {}) for..of 會給出 TypeError: items is not iterable: for (const item of items) {} 那麼,你可以做些什麼來進行遍歷呢? for..in 是一種更簡單的方式: for (const item in items) { console.log(item) } 你還可以調用 Object.entries() 來生成一個包含所有可枚舉屬性的數組,然後使用上述任意一種方法遍歷它:...