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); //
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()

es6 2017的更多相关文章

  1. 学习js都学习什么?

    前言:js(javaScript)是面向对象(OOP)的编程语言,目前不仅仅是客户端语言了,基予node可以做服务器端程序,那我们学习js都学习什么? 学习js,我们学习它的几部分组成 1.ECMAS ...

  2. Webpack+React+ES6 最新环境搭建和配置(2017年)

    刚刚学习React,发现React在ES6下的语法才是本体,结合ES6新的语言特性,使组件化开发显得更加直观.而且现在的Angular2也开始使用支持强类型的TypeScript,转译(transpi ...

  3. 2017年"程序媛和工程狮"绝对不能忽视的编程语言、框架和工具

      2017年"程序媛和工程狮"绝对不能忽视的编程语言.框架和工具 在过去的一年里,软件开发行业继续大踏步地向前迈进.回顾 2016 年,我们看到了更多新兴的流行语言.框架和工具, ...

  4. 【转】2016/2017 Web 开发者路线图

    链接:知乎 [点击查看大图] 原图来自LearnCodeAcademy最火的视频,learncode是YouTube上最火的Web开发教学频道,介绍包括HTML/CSS/JavaScript/Subl ...

  5. ES6(一)ECMAscript6介绍

    nvm-windows Node.js是JavaScript语言的服务器运行环境,对ES6的支持度比浏览器更高.通过Node,可以体验更多ES6的特性.建议使用版本管理工具nvm,来安装Node,因为 ...

  6. 2017 年值得一瞥的 JavaScript 相关技术趋势

    跨年前两天,Dan Abramov在Twitter上提了一个问题: JS社区毫不犹豫的抛出了它们对于新技术的预期与期待,本文内容也是总结自Twitter的回复,按照流行度降序排列.有一个尚未确定的小点 ...

  7. ES6 入门系列 - 函数的扩展

    1函数参数的默认值 基本用法 在ES6之前,不能直接为函数的参数指定默认值,只能采用变通的方法. function log(x, y) { y = y || 'World'; console.log( ...

  8. ES6 带来了什么

    http://www.kuqin.com/shuoit/20150928/348317.html  这篇文章介绍了javascript 的大致历史 http://www.css88.com/archi ...

  9. ES6之"let"能替代"var"吗?

    译者按: 使用let的确会比var安全很多. 原文: Why You Shouldn't Use 'var' Anymore 译者: Fundebug 为了保证可读性,本文采用意译而非直译. 我已经使 ...

随机推荐

  1. android Gui系统之SurfaceFlinger(1)---SurfaceFlinger概论【转】

    转自:https://www.cnblogs.com/deman/p/5584198.html 阅读目录 1.OpenGL & OpenGL ES 2.Android的硬件接口HAL 3.An ...

  2. 卷积神经网络(matlab实现)

    卷积神经网络是看matlab 的一个toolbox入的门: https://github.com/rasmusbergpalm/DeepLearnToolbox 还有一篇原理推导文献,全是公式: ht ...

  3. python3+selenium框架设计05-配置文件和浏览器引擎类

    python3配置文件的增删改查等操作可以使用内置的ConfigParser模块,可以自行百度学习,也可以看Python3学习笔记27-ConfigParser模块 配置文件一般存放着环境信息,比如u ...

  4. vue.js如何更改默认端口号8080为指定端口

    执行npm run dev实际是在调用根目录下的package.json 打开package.json后可发现有这样一段代码 由此可知,我们应该查看build目录下的dev-server.js文件 在 ...

  5. corba/ice/web service/com+

    //todo model1 model2

  6. 数据库之删除表数据drop、truncate和delete的用法

    数据库中删除表数据的关键字,最常用的可能就是delete了,另外其实还有drop和truncate两个关键字. 老大:drop 命令格式:drop table  tb  ---tb表示数据表的名字,下 ...

  7. 【原创】大叔经验分享(29)cdh5使用已存在的metastore数据库部署hive

    cdh5.16.1使用的hive版本是hive-1.1.0+cdh5.16.1+1431,详见:https://www.cloudera.com/documentation/enterprise/re ...

  8. Java实现三大简单排序算法

    一.选择排序 public static void main(String[] args) { int[] nums = {1,2,8,4,6,7,3,6,4,9}; for (int i=0; i& ...

  9. appium+java (六) 手机chrome浏览器操作

    一.前言 早之前写过一段时间的appium for native app(即原生app脚本),但尴尬的是从未写过类似的文章,后期有时间我会陆续接着写,近一阶段有时间又把appium捡起来了,由于公司产 ...

  10. iOS Core Data 数据库的加密(待研究)

    https://github.com/project-imas/encrypted-core-data 使用起来很方便,底层还是使用了SQLCipher,有时间要研究一下! 数据库的密码不能用固定字符 ...