ES5-6-7学习

2019-05-28  本文已影响0人  翌凌枫

ES5中的特性

一、严格模式 'use strict'

1. 理解:
2. 目的/作用
3. 使用
4. 语法和行为改变

二、JSON对象

JSON.stringify(obj/arr) 方法将 JavaScript 对象转换为(通常为对象或数组)
JSON.parse(json) 方法将(通常为对象或数组)转换为 JavaScript 对象

三、Object扩展

Object.create(prototype, [descriptors])

  1. Object.defineProperties(object, descriptors)

对象本身的两个方法

四、Array扩展

  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的值

五、Function扩展

  1. Function.prototype.bind(obj) :
    作用: 将函数内的this绑定为obj, 并将函数返回
  2. 面试题: 区别bind()与call()和apply()?
    都能指定函数中的this
    call()、apply()是立即调用函数
    bind()是将函数返回

ES6中的特性

一、let关键字

1. 作用:
2. 特点:
3. 应用:
简化的对象写法
* 省略同名的属性值
* 省略方法的function
* 例如:
  let x = 1;
  let y = 2;
  let point = {
    x,
    y,
    setX (x) {this.x = x}
  };

二、const关键字

1. 作用:
2. 特点:
3. 应用:

三、变量的解构赋值

1. 理解:
2. 对象的解构赋值

let {n, a} = {n:'tom', a:12}

3. 数组的解构赋值

let [a,b] = [1, 'atguigu'];

4. 用途

四、模板字符串

  1. 模板字符串 : 简化字符串的拼接
var a = `我的名字:${李磊},我的年龄:${18}`;
上一篇下一篇

猜你喜欢

热点阅读