ES6第二期

1.整理数组新增方法

1.map方法:给数组中每一个元素 进行特殊处理后,返回一个新的数组


        let prices=[20,30,40]
        prices=prices.map(item=>item+="天")
        console.log(prices)//20天 30天 40天 

2.filter方法:过滤一个数组中,符合要求的元素,返回一个新数组

        let counts=[40,50,80,100,20,45]
        let arr=counts.filter(item=>item>=60)
            //只要返回true,就是返回对应item
        console.log(arr)//false

3.every: 只要有一个元素是假的,整体就返回假;some: 只要有一个符合要求,整体就返回真

        let counts=[50,45,50,65,8]
        let result=counts.some(item=>item>=60)
        console.log(result)//true
        let counts=[88,87,99,65,8]
        let result=counts.every(item=>item>=60)
        console.log(result)//false

2.整理字符串自增方法

1.reduce 多对一 返回一个结果 将数组中的每一个数组项,进行对应操作,返回一个新的内容

reduce的四个参数:1、previousValue (上一次调用回调返回的值,或者是提供的初始值(initialValue)) 2、currentValue (数组中当前被处理的元素) 3、index (当前元素在数组中的索引) 4、array (调用 reduce 的数组)

常用用法1:计算数组中每个元素出现的次数

let names = ['Alice', 'Bob', 'Tiff', 'Bruce', 'Alice'];

let nameNum = names.reduce((pre,cur)=>{
  if(cur in pre){
    pre[cur]++
  }else{
    pre[cur] = 1 
  }
  return pre
},{})
console.log(nameNum); //{Alice: 2, Bob: 1, Tiff: 1, Bruce: 1}

常用用法二:数组去重

let arr = [1,2,3,4,4,1]
let newArr = arr.reduce((pre,cur)=>{
    if(!pre.includes(cur)){
      return pre.concat(cur)
    }else{
      return pre
    }
},[])
console.log(newArr);// [1, 2, 3, 4]

3.ES6新增数据类型

1.map类型:key可以为任意类型的元素,原始的对象:key:value,key:value key只能是字符串

2.symbol 创建一个独一无二的值,防止出现命名冲突问题.通常用作对象的key

3.class类

        class People{
            //构造函数:创建对象时调用的函数,通常用于设置属性
            constructor(name,age) {
                this.height=100
                this.name=name
                this.age=age
            }
            //
            showInfo(){
                console.log(this.name)
            }
        }
        let p1=new People("王一",21)
        let p2=new People("王二",22)
        console.log(p1)
        console.log(p2)

最重要的特性莫过于之前我们通过原型链和冒充继承等方法实现的继承了

         class Student extends People{
            constructor(name,age,score){
                super(name,age) //调用父类的构造函数
                //super调用永远在最上面的
                this.score=score
            }
            showInfo(){
                
            }
        }
        let s1=new Student("王一",21,99)
        console.log(s1)
        s1.showInfo()

这里重新定义新的Student类通过extends继承People类

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值