ES6测试----常见问题

1.  说出至少5个ES6的新特性,并简述他们的作用

  1》let关键字,用于声明只在块级作用域起作用的变量;

  2》const关键字,用于声明一个常量;

  3》解构赋值,一种新的变量赋值方式。常用于交换变量值,提取函数返回值,设置默认值。

  例如:var {a,b,c} = {"c":10,"b":9,"a":8},结果中,a,b,c的值分别是:()

      8,9,10(解析:对象的解构赋值不会受到属性的排列次序影响)

  4》Symbol数据类型,定义一个独一无二的值。

  5》for...of遍历,可遍历具有iterator接口的数据结构。

  6》Set结构,存储不重复的成员值的集合。

  7》Map结构,键名可以是任何类型的键值对集合。

  8》Promise对象,更合理,规范的处理异步操作。

  9》Class类定义类和更简便的实现类的继承。

2.  使用解构赋值,实现两个变量的值的交换

  let a=1;

  let b=2;

  [a,b]=[b,a];

3.使用模板字符串改写下面的代码。(ES5 to ES6改写题)

let iam  = "我是";
let name = "大彬哥";
let str  = "大家好,"+iam+name+",我想死你们啦。";

改写成模板字符串:
let iam  = `我是`;
let name = `大彬哥`;
let str  = `大家好,`+${iam+name}+`,我想死你们啦。`;

4.promise对象的用法,手写一个promise

  promise是一个构造函数:

  var promise = new Promise((resolve,reject)=>{

    if(操作成功){

      resolve(value)

      }else{

      reject(error)

      }

  })

  promise.then(function (value){

    //success

    },function(value){

     //failure

  })

)

    


 
 
原文地址:https://www.cnblogs.com/hou-yuan-zhen/p/11806949.html