ES7
Array.prototype.includes()
在 ES6 中我们有 String.prototype.includes()可以查询给定字符串是否包含一个字符
在 ES7 中,我们在数组中也可以用 Array.prototype.includes方法来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回 true,否则返回 false。
两个参数,第一个参数是我们要查询的值,第二个参数是我们给定的下标起始值
var arr = [1, 2, 4, 5, 'aaa', { 'a': 12 }, [{ 'name': () => 1 }, [3, 4]], 1,'v']
console.log(arr.includes(1,5));//true
Math.pow()
在 ES7 中引入了指数运算符,具有与 Math.pow() 等效的计算结果
console.log(2**10);// 输出 1024
console.log(Math.pow(2,10))// 输出 1024
- String.prototype.padStar
- String.prototype.padEnd
var str='aaa'
console.log(str.padStart(10));// aaa
console.log(str.padStart(10,'bcd')); //bcdbcdbaaa
console.log(str.padStart(10,1234567891));//1234567aaa
console.log(str.padEnd(10));//aaa /
console.log(str.padEnd(10,'bcd'));//aaabcdbcdb
console.log(str.padEnd(10,1234567891));//aaa1234567
ES8
*Async/Await
等我把Promise掌握再去了解,嘿嘿。
Object.values
-
Object.keys
values和keys返回的是自身属性的所有值,不包括继承的值
const vals = {
'name': 'hhhh',
'age': 18,
'sex': 'male'
};
console.log(Object.values(vals));//["hhhh", 18, "male"]
console.log(Object.keys(vals));//["name", "age", "sex"]
-
Object.entries
Object.entries
返回一个给定对象自身可枚举属性的键值对的数组
const vals = {
'name': 'hhhh',
'age': 18,
'sex': 'male'
};
console.log(Object.entries(vals));[["name", "hhhh"], ["age", 18],["sex", "male"]]
ES10
Array.prototype.flat()
多维数组是一种常见的数据格式,特别是在进行数据检索的时候。将多维数组打平是个常见的需求。通常我们能够实现,但是不够优雅。
flat() 方法会按照一个可指定的深度递归遍历数组,并将所有元素与遍历到的子数组中的元素合并为一个新数组返回。
var arr = [1, 2, [1, 2, 2, 222, [111111, 2222, 34, 3, [44444], [123, 324, 34, 345, 43, 5]]]]
console.log(arr)//[1, 2, Array(5)]
console.log(arr.flat(3));//[1, 2, 1, 2, 2, 222, 111111, 2222, 34, 3, 44444, 123, 324, 34, 345, 43, 5]
Array.prototype.flatMap
有了 flat 方法,那自然而然就有 Array.prototype.flatMap 方法,flatMap() 方法首先使用映射函数映射每个元素,然后将结果压缩成一个新数组。从方法的名字上也可以看出来它包含两部分功能一个是 map,一个是 flat(深度为 1)。
网友评论