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); //
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的更多相关文章
- 学习js都学习什么?
前言:js(javaScript)是面向对象(OOP)的编程语言,目前不仅仅是客户端语言了,基予node可以做服务器端程序,那我们学习js都学习什么? 学习js,我们学习它的几部分组成 1.ECMAS ...
- Webpack+React+ES6 最新环境搭建和配置(2017年)
刚刚学习React,发现React在ES6下的语法才是本体,结合ES6新的语言特性,使组件化开发显得更加直观.而且现在的Angular2也开始使用支持强类型的TypeScript,转译(transpi ...
- 2017年"程序媛和工程狮"绝对不能忽视的编程语言、框架和工具
2017年"程序媛和工程狮"绝对不能忽视的编程语言.框架和工具 在过去的一年里,软件开发行业继续大踏步地向前迈进.回顾 2016 年,我们看到了更多新兴的流行语言.框架和工具, ...
- 【转】2016/2017 Web 开发者路线图
链接:知乎 [点击查看大图] 原图来自LearnCodeAcademy最火的视频,learncode是YouTube上最火的Web开发教学频道,介绍包括HTML/CSS/JavaScript/Subl ...
- ES6(一)ECMAscript6介绍
nvm-windows Node.js是JavaScript语言的服务器运行环境,对ES6的支持度比浏览器更高.通过Node,可以体验更多ES6的特性.建议使用版本管理工具nvm,来安装Node,因为 ...
- 2017 年值得一瞥的 JavaScript 相关技术趋势
跨年前两天,Dan Abramov在Twitter上提了一个问题: JS社区毫不犹豫的抛出了它们对于新技术的预期与期待,本文内容也是总结自Twitter的回复,按照流行度降序排列.有一个尚未确定的小点 ...
- ES6 入门系列 - 函数的扩展
1函数参数的默认值 基本用法 在ES6之前,不能直接为函数的参数指定默认值,只能采用变通的方法. function log(x, y) { y = y || 'World'; console.log( ...
- ES6 带来了什么
http://www.kuqin.com/shuoit/20150928/348317.html 这篇文章介绍了javascript 的大致历史 http://www.css88.com/archi ...
- ES6之"let"能替代"var"吗?
译者按: 使用let的确会比var安全很多. 原文: Why You Shouldn't Use 'var' Anymore 译者: Fundebug 为了保证可读性,本文采用意译而非直译. 我已经使 ...
随机推荐
- 武汉倍特威视系统有限公司 --- 安全帽识别|烟火识别|智慧工地|BVS智能视频分析
武汉倍特威视系统有限公司 --- 安全帽识别|烟火识别|智慧工地|BVS智能视频分析 http://www.betvsys.com/
- NUMA的关闭方法【转】
Centos 6 在/etc/grub.conf 在kernel 添加numa=off 就行了 一.检查OS是否开启NUMA # numactl --hardware available: 1 ...
- C++类的继承中构造函数和析构函数调用顺序例子
/*当建立一个对象时,首先调用基类的构造函数,然后调用下一个派生类的构造函数,依次类推,直至到达派生类次数最多的派生次数最多的类的构造函数为止.简而言之,对象是由“底层向上”开始构造的.因为,构造函数 ...
- os.date
代码中有一段如下: local date = os.date("*t", set) if date then luci.sys.call("date ...
- python序列(列表,元组,字典)的常用排序
列表 正向排序 sort() >>> list=[1,6,3,4,5,2] >>> list.sort() >>> list [1, 2, 3, ...
- linux进程内存布局
一个程序本质上都是由 BSS 段.data段.text段三个组成的.这样的概念在当前的计算机程序设计中是很重要的一个基本概念,而且在嵌入式系统的设计中也非常重要,牵涉到嵌入式系统运行时的内存大小分 ...
- VBS计时器2
打开计时器,如果点击暂停,会显示你刚才事物所用的时间(以分钟为单位) dim c //控制循环 c= vbyes while c<>vbno dim a a= 60*hour(now)+m ...
- 关于KEIL编译报错和警告问题
编译时候报错.. Library reports error: __use_no_semihosting was requested, but _ttywrch was referenced 上网找了 ...
- C# WINFORM 编程中,选择**文件夹**而不是文件的方法(转)
我们选择文件可以用 OpenFileDialog ,但是文件夹有两种方法. 法一: 用C#的FolderNameEditor类的子类FolderBrowser类来实现获取浏览文件夹对话框的功能.下面来 ...
- PID控制器开发笔记之十一:专家PID控制器的实现
前面我们讨论了经典的数字PID控制算法及其常见的改进与补偿算法,基本已经覆盖了无模型和简单模型PID控制经典算法的大部.再接下来的我们将讨论智能PID控制,智能PID控制不同于常规意义下的智能控制,是 ...