ECMAScript 2016 是 JavaScript 的一个版本,其中包含许多新的特性。其中,Array.prototype.includes、Object.values/Object.entries 和字符串填充方法是非常实用的特性。在本文中,我们将深入研究这些新特性,给出详细的例子,以及他们的应用场景和优点。
Array.prototype.includes
Array.prototype.includes
是一个返回布尔值的方法,它用于判断数组中是否包含某个元素。如果包含,返回 true
,否则返回 false
。
以前,我们用 Array.prototype.indexOf
来判断一个元素是否在数组中存在。但是,如果数组中有重复元素,它只会返回第一个匹配项的索引。而 Array.prototype.includes
会返回一个简单的布尔值,指示数组是否包含该元素。
下面是一个例子:
const array = [1, 2, 3, 4, 5]; console.log(array.includes(3)); // true console.log(array.includes(6)); // false
Object.values/Object.entries
Object.values
和 Object.entries
是两个新的方法,它们用于返回一个对象的值和键值对数组。
Object.values
方法返回给定对象的所有值,它返回一个只包含值的数组。
const object1 = { a: 'somestring', b: 42, c: false }; console.log(Object.values(object1)); // ["somestring", 42, false]
Object.entries
方法返回一个给定对象的所有键值对数组,按照键值对的顺序排列。每个键值对都是一个长度为 2 的数组,包含对象的一个属性的键和它的值。
const object2 = { a: 5, b: 10, c: 20 }; console.log(Object.entries(object2)); // [["a", 5], ["b", 10], ["c", 20]]
字符串填充方法
在 ECMAScript 2016 中引入了三个字符串填充方法,分别是 String.prototype.padStart
、String.prototype.padEnd
和 String.prototype.repeat
。
padStart
和 padEnd
方法用于将指定字符串填充到原字符串的头或尾部。如果原字符串的长度小于指定的长度,则在头部或尾部添加填充字符串,直到字符串达到指定的长度。
padStart
方法使用指定的填充字符串将原字符串填充到指定的长度。
const str1 = '5'; console.log(str1.padStart(2, '0')); // '05' console.log(str1.padStart(3, '0')); // '005' console.log(str1.padStart(4, '0')); // '0005'
padEnd
方法也是一样的,只不过是填充到字符串的尾部。
repeat
方法用于将原字符串重复指定次数,返回一个新的字符串。这个重复次数必须是一个非负整数。如果次数为 0,返回一个空字符串。
const str2 = 'abc'; console.log(str2.repeat(2)); // 'abcabc' console.log(str2.repeat(3)); // 'abcabcabc' console.log(str2.repeat(0)); // ''
总结
ECMAScript 2016 中的这些新特性,包括 Array.prototype.includes
、Object.values/Object.entries
和字符串填充方法,使得编写 JavaScript 更加方便和易懂。这些功能能够简化代码,并且使代码更加易于阅读和理解。希望本文的解释和示例代码有助于您理解这些新特性,并在实践中使用它们。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/65347ef17d4982a6eb9189ed