JS ES6 内置对象的扩展

字符串的扩展

模板字符串
将字符串放在反引号: ` 中
1、repeat 对字符串进行重复操作

let str1 = 'a';
let str2 = str1.repeat(6);
console.log(str2); // aaaaaa

2、includes() 判断字符串内是否有指定字符串
startsWith() 查找开头是否有指定字符串
endsWith() 查找结尾是否有指定字符串

let str = 'hello';

console.log(str.includes('ll')); // true
console.log(str.includes('eee')); // false

console.log(srr.startsWith('h')); // true
console.log(srr.startsWith('a')); // false

console.log(srr.endsWith('o')); // true
console.log(srr.endsWith('a')); // false

数组的扩展

Array.from() 将类数组对象转为真正的数组

Array.of() 创建一个数组

find() findIndex() 对数组进行筛选,前者没有找到为 undefined 后者没有找到为 -1 正确返回下标

const arr = [1,2,3,4,5];
let res = arr.find(function (a){
    
    
	return a < 2;
});
console.log(res); // 1

let res = arr.findIndex(function (a){
    
    
	return a < 2;
});
console.log(res); // 0

fill() 给定一个值对数组进行填充

const arr = [1,2,3,4,5];
arr.fill('aaa');
console.log(arr); // ["aaa","aaa","aaa","aaa","aaa"]
arr.fill('aaa', 1, 3);
console.log(arr); // [1,"aaa","aaa",4,5]

扩展运算符(spread)

arr = [1, 2, 34, 5, 67]
arr1 = [...arr] // ...就可取到 arr 里所有的值 

对象的扩展

对象的简洁表示法
key 和 value 相同可以简写

const obj = {
    
    a:a}

简写

const obj = {
    
    a}

Object.is() 比较

console.log(Object.is(NaN, NaN)); // true
console.log(Object.is(+0, -0)); // false

Object.assign() 用于将多个对象合并,将源对象的所有可枚举属性,复制到目标对象

let obj1 = {
    
    a: 1};
let obj2 = {
    
    a: 2, b: 3};
let obj3 = {
    
    c: 'abc'};
Object.assign(obj1, obj2, obj3); // 第一个属性是目标对象,第二个后面的是要合并的,若后有重则盖前
console.log(obj1); // {a: 2, b: 3, c: 'abc'} 

猜你喜欢

转载自blog.csdn.net/weixin_43176019/article/details/109178111