入门--->见下文
1: 在 cmd 下面运行 echo test > .properties 会自动生成一个 .
properties 的文件并且里面的内容是 test。 先不管何用,知道就好。在 win 系统手动创建.开头的文件是创建不成功的,linux下则可以。
2. 可以看阮一峰教程:
http://es6.ruanyifeng.com/ 相信很多不熟悉 node 的人在安装部分就看不懂了,可以参考安装 babel 攻略 http://www.cnblogs.com/hl-520/p/5795141.html 【该教程逼格稍微高点,也可以参考
https://zhuanlan.zhihu.com/p/20233021
本人简易先看这个教程,通俗一点,一开始就高大上会受不了的 】
本人简易先看这个教程,通俗一点,一开始就高大上会受不了的 】
按照2中提及的方法就可以在本地搭建一个简易的es6执行并且转化es5的环境。
按照目录跟进:
1. let 跟 const 命令:
let 命令只能在块级作用域中起作用,也不存在变量作用域的提升,也不能改变。块级作用域中如果出现let就会t会绑定变量 暂时性死区. let 不允许在相同作用域内,重复声明同一个变量。 es6中变量不可重复命名,变量必须是先定义然后使用。
变化1: es6引进了块级作用域 let 默认就是一个块级作用域 块级作用域出现了两种场景:
(1)、内层变量可能会覆盖外层变量
- var name = 'anikin';
- function f(){
- alert( name ); // undefined
- if( true ){
- var name = 'jack';
- }
- }
- var name = 'anikin';
- for( var i=0; i<name.length; i++ ){
- console.log( name[i] )
- }
- alert(i) // 5
ES6 允许块级作用域的任意嵌套 {{{{{let insane = 'Hello World'}}}}};
块级作用域的出现,实际上使得获得广泛应用的 立即执行匿名函数(IIFE)不再必要了 de>
- (function(){
- var tem = ....
- }() // 匿名函数的写法
- {
- let a = 1; .... 块级作用域的写法
- }
2. 变量的解构赋值。解构不成功返回 undefined
- var[a,b,c] = [1,2,3]; // a=1; b=2' c=3
- let[ , , d] = ['a','b','3'] // d = 3
- let[x,y] = ['1','2','3'] // a=1; b=2; 不完全解构仍然也是可以的
3. string
Unicode 格式字符JavaScript 允许采用 \uxxxx
形式表示一个字符,其中“xxxx”表示字符的码点
ps: Unicode(统一码、万国码、单一码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求.一般是u后面跟一个16进制的串。这种表示法只限于\u0000
——\uFFFF
之间的字符。超出这个范围的字符,必须用两个双字节的形式表达。
(1)
es6新增的遍历 for..of 比for循环遍历的更加广泛一点
- for( let codePoint of 'foe'){
- console.log( codePoint ); // f o e
- }
(2)
es5 String.fromCharCode -> es6
String.fromCodePoint 刚好相反根据字符码
(3)es6 新增确认包含子串的方法:
includes(): 返回布尔值,表示是否找到了参数字符串。 // var ds = s.startsWith('hello')
startsWith():返回布尔值,表示参数字符串是否在源字符串的头部。 // var de = s.endsWith('!')
endsWith():返回布尔值,表示参数字符串是否在源字符串的尾部 // var dr = s.includes('o');
(4) 方法返回一个新字符串,表示将原字符串重复
n
次 // var x = 'anikin'.repeat(10)(5) 模板字符串 // 反引号的打法:英文状态下 esc 键
- $('#result').append(`
There are <b>${basket.count}</b> items // 解析后: basket.count
in your basket, <em>${basket.onSale}</em>
are on sale!
`);
4. 数组
Array.from
方法用于将两类对象转为真正的数组:类似数组的对象(array-like object)和 可遍历(iterable)的对象(包括ES6新增的数据结构 Set 和 Map ).- var arrayLike = {
- '0': 'a',
'1': 'b',
'2': 'c',
length: 3 - }
- var arr1 = [].slice.call(arrayLike); // ['a', 'b', 'c']
// ES6的写法
var arr2 = Array.from( arrayLike ); // ['a', 'b', 'c']
var arr3 = Array.prototype.slice.call( arrayLike ); // ['a','b','c']