es6 2017

http://es6.ruanyifeng.com/ 

18.async  20.Decorator 属于ES2017, nodejs 未实现

21.Module 中的 import export  nodejs未实现,浏览器也未实现,只能babel 等转码

ES6 解构赋值应用

/*  解构赋值
*   let [a,b,c] = [1,2,3,4]
*   console.log(a); // 1
* */// 【1】返回对象
function test(a,b) {
  return {
    jia:a+b,
    jian:a-b,
    cheng:a*b,
    chu:a/b
  }
}
let {jia,jian,cheng,dd}=test(12,4)  // 这里的变量要跟上面一致

console.log(test(12, 4));
console.log(test(12, 4).jia); // 16
console.log('和: '+jia);
console.log('差: '+jian);
console.log('积: '+cheng);
console.log('除: '+dd);  // 修改变量的结果是 undefined

// 【2】 函数参数可以调换顺序
function f2({name,url,age}) {
  console.log('my name is ' + name + ',my age is ' + age + ',my url is ' + url);
}
f2({url:'baidu.com',age:12,name:'kang'})

 

/* 【3】模板字符串应用  模板使用`` ,变量使用 ${name} */
var name = 'kang';
$(".b").append(`
   <div>
     <span>${name}</span>
     <h1>sss</h1>
 </div>
 `)

 

// 1.解构key要一致
let {a, b} = {a: 121, b: 20};
console.log(a); // key 要一致
// 2. ...剩余参数
function show (a, b, ...arr) {
  console.log(a, b, arr);
}
show(12, 3, 4, 5, 6);

// 3.map返回新数组
let arr = [1, 2, 3, 4, 5];
let newArr = arr.map(val => {
  return val * 2;
});
console.log(newArr);

// 4.reduce 累积值

let arr3 = [1, 3, 4, 5];
// tmp 是累积值 前面值的和
// item 是当前值
// 求和
let res = arr3.reduce((tmp, item, index) => {
  return tmp + item;
});
console.log(res);
let res2 = arr3.reduce((tmp, item, index) => {
  if (index < arr3.length - 1) {
    return tmp + item;  // 一直累加
  } else {
    // 累积到最后求平均值
    return (tmp + item) / arr3.length;
  }
});
console.log(res2);

// 5.startswith

let url = 'http://xxx';
if (url.startsWith('http://')) {
  console.log('is url');
} else {
  console.log('no url');
}

// 6 class
class Person {
  constructor (name,age){
    this.name=name;
    this.age=age;
  }
  show(){
    console.log(this.name);
  }
}
class Worker extends Person{
  constructor (name,age,job){
    super(name,age);  // 继承属性
    this.job=job;
  }
  showJob(){
    console.log(this.job);
  }
}
let w = new Worker('kang',12,'web')
w.show();  // 方法自动继承
w.showJob()

 

posted @ 2017-04-20 17:39  gyz418  阅读(233)  评论(0)    收藏  举报