ES6_11_字符串、数值、数组、对象扩展

字符串扩展:

1. includes(str) : 判断是否包含指定的字符串
2. startsWith(str) : 判断是否以指定字符串开头
3. endsWith(str) : 判断是否以指定字符串结尾
4. repeat(count) : 重复指定次数

字符串扩展简单举例:

//字符串的扩展
    let str = 'abcdefghijklmnttghij';
    console.log(str.includes('t'));//true
    console.log(str.includes('a'));//true
    console.log(str.startsWith('a'));//true
    console.log(str.endsWith('e'));//false
    console.log(str.repeat(5));//abcdefghijklmnttghijabcdefghijklmnttghijabcdefghijklmnttghijabcdefghijklmnttghijabcdefghijklmnttghij

数值扩展:

1. 二进制与八进制数值表示法: 二进制用0b, 八进制用0o
2. Number.isFinite(i) : 判断是否是有限大的数
3. Number.isNaN(i) : 判断是否是NaN
4. Number.isInteger(i) : 判断是否是整数
5. Number.parseInt(str) : 将字符串转换为对应的数值
6. Math.trunc(i) : 直接去除小数部分

数值扩展简单举例:

//数值的扩展
    console.log(0b1010);// 10
    console.log(0o56);// 46

    console.log(Number.isFinite(Infinity));//true

    console.log(Number.isNaN(NaN));//false

    console.log(Number.isInteger(123.12));//false
    console.log(Number.isInteger(123.0));//true

    console.log(Number.parseInt('123abc123'));//123
    console.log(Number.parseInt('a123abc123'));//NaN

    console.log(Number.trunc('123.123'));//123

数组扩展:

1. Array.from(v) : 将伪数组对象或可遍历对象转换为真数组
2. Array.of(v1, v2, v3) : 将一系列值转换成数组
3. find(function(value, index, arr){return true}) : 找出第一个满足条件返回true的元素
4. findIndex(function(value, index, arr){return true}) : 找出第一个满足条件返回true的元素下标

数组扩展简单举例:

let btns = document.getElementsByTagName('button');
Array.from(btns).forEach(function (item, idex){
console.log(item);
});

let arr = Arry.of(1,4,'abc',true);
console.log(arr);

let arr2 = [2,3,4,2,5,7,3,6,5];
arr2.find(function (item, idex){
return item >4;
});
console.log(result);

对象扩展:

1. Object.is(v1, v2)
* 判断2个数据是否完全相等
2. Object.assign(target, source1, source2..)
* 将源对象的属性复制到目标对象上
3. 直接操作 __proto__ 属性
let obj2 = {};
obj2.__proto__ = obj1;

对象扩展简单举例:

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

let obj = {};
let obj1 = {username:'anverson', age:42};
let obj2 = {sex: '男'};
Object.assign(obj,obj1,obj2);
console.log(obj);

let obj3 = {};
let obj4 = {money:50000000};
obj3.__protp__ = obj4;
console.log(obj3);
console.log(obj3.money);

 

posted @ 2019-07-08 19:29  sunjiaojiao  阅读(299)  评论(0编辑  收藏  举报