ES6学习一--ES5

JSON对象方法

1.将JSON字符串转换成js对象(IE7及以下不支持)(IE7及以下兼容需其他手段)

JSON.parse()

2.将js对象转成JSON字符串

JSON.stringify()

3.js对象深度克隆

JSON.parse(JSON.stringify(arrTwo))

Object对象方法

1.Object.create(prototype,[descriptors])

  作用:以指定对象为原型创建新的对象

  为新的对象指定新的属性,并对属性进行描述

    -value:指定值

    -writable:标识当前属性是否科修改,默认false

    -configurabale:标识当前属性是否可以被删除,默认false

    -enumerable:标识当前属性是否能用for in枚举,默认false

var obj={
        usename:"kobe",
        age:18
    }

    var obj1=Object.create(obj,{
        sex:{
            value:"男",//
            writable:true,//是否可修改
            configurable:true,//是否可删除
            enumerable:true,//是否可枚举
        }
    })

    obj1.sex="女"
    delete obj1.sex
    for (var i in obj1){
        console.log(i)//属性值
    }

 

2.Object.defineProperties(object,descriptors)

  作用:为指定对象定义扩展多个属性

    get:用来获取当前属性值的回调函数

    set:修改当前属性值的触发的回调函数,并且实参即为修改后的值

  存取器属性:setter,getter一个用来存值,一个用来取值

 

var obj={
        usename:"kobe",
        age:18
    }

    Object.defineProperties(obj,{
        fullIfo:{
            get:function () {
                return this.usename+this.age
            },
            set:function (data){//监听扩展属性,当扩展属性发生变化的时候会自动调用
                console.log(data)
            }
        }
    })

    console.log(obj)

3.对象本身方法

  get propertyName(){}用来得到当前属性值的回调函数

  set propertyName(){}用来监视当前属性值的回调函数

var obj={
  get fullName(){
  }  
}

数组的扩展

1.Array.prototype.indexOf(value):得到值在数组中的第一个下标

2.Array.prototype.lastIndexOf(value):得到值在数组中的最后一个下标

3.Array.prototype.forEach(function(item,index){}):遍历数组

4.Array.prototype.map(function(item,index){}):遍历数组返回的新的数组,返回加工之后的值

5.Array.prototype.filter(function(item,index){}):遍历过滤出的一个新的子数组,返回条件为true的值

CALL,APPLY,BIND用法详解

1.Function.prototype.bind(obj)

  作用:将函数内的this绑定为obj,并将函数返回

2.bind()/call()/apply()区别

传入参数的形式不同
foo.call(obj,a,b)//直接从第二个参数开始一次传入
foo.apply(obj,[a,b])//最多二个参数且第二个参数以数组的形式传递
call()和apply()会立即调用当前函数

foo.bind(this),绑定完后不会立即调用,而是将函数返回
                    传参方式和call()一样
        bind(this)中this指向的是父级执行上下文中的this

 

posted @ 2018-08-06 16:04  大雄是个好青年  阅读(185)  评论(0编辑  收藏  举报