<!DOCTYPE html> <html lang="en"> <head> <title></title> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <script src="./dist/index.js"></script> </head> <body> Hello ECMA Script 6 </body> </html>
<script src="./dist/index.js"></script>
let a=1; console.log(a);
npm init -y
{ "name": "es6", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "keywords": [], "author": "", "license": "ISC" }
npm install --save-dev babel-preset-es2015 babel-cli
html
"devDependencies": { "babel-cli": "^6.24.1", "babel-preset-es2015": "^6.24.1" }
{ "presets":[ "es2015" ], "plugins":[] }
babel src/index.js -o dist/index.js
{ "name": "es6", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "build": "babel src/index.js -o dist/index.js" }, "keywords": [], "author": "", "license": "ISC", "devDependencies": { "babel-cli": "^6.24.1", "babel-preset-es2015": "^6.24.1" } }
之前,爲變量賦值,咱們只能直接指定值。好比下面的代碼:vue
let a=0; let b=1; let c=2;
let [a,b,c]=[1,2,3];
let [a,[b,c],d]=[1,[2,3],4];
let [foo = true] =[]; console.log(foo); //控制檯打印出true
let [a,b="JSPang"]=['技術胖'] console.log(a+b); //控制檯顯示「技術胖JSPang」
let [a,b="JSPang"]=['技術胖',undefined]; console.log(a+b); //控制檯顯示「技術胖JSPang」
let [a,b="JSPang"]=['技術胖',null]; console.log(a+b); //控制檯顯示「技術胖null」
let {foo,bar} = {foo:'JSPang',bar:'技術胖'}; console.log(foo+bar); //控制檯打印出了「JSPang技術胖」
let foo; {foo} ={foo:'JSPang'}; console.log(foo);
let foo; ({foo} ={foo:'JSPang'}); console.log(foo); //控制檯輸出jspang
const [a,b,c,d,e,f]="JSPang"; console.log(a); console.log(b); console.log(c); console.log(d); console.log(e); console.log(f);
( 擴展運算符和rest參數)[http://www.jb51.net/article/118958.htm]webpack
...變量名
function sortNumbers1 () { return Array.prototype.slice.call(arguments).sort(); } const sortNumbers2 = (...values) =>{ return values.sort(); } console.log(sortNumbers1(9,2,5,1)); console.log(sortNumbers2(9,2,5,1));
- arguments 對象不是一個真實的數組;上文的``` Array.prototype.slice.call(arguments)```就是將 arguments 對象轉化成一個真數組,而rest參數是真實的 Array 實例,也就是說你可以在它上面直接使用全部的數組方法
function f(a, ...b, c) { ... } // 報錯
let jspang='技術胖'; let blog = '很是高興你能看到這篇文章,我是你的老朋友'+jspang+'。這節課咱們學習字符串模版。'; document.write(blog);
let jspang='技術胖'; let blog = `很是高興你能看到這篇文章,我是你的老朋友${jspang}。這節課咱們學習字符串模版。`; document.write(blog);
let a=1; let b=2; let result=`${a+b}`; document.write(result);
### ES6數字操做 #### 數字判斷和轉換 ##### 數字驗證Number.isFinite( xx ) - 可使用Number.isFinite( )來進行數字驗證,只要是數字,不管是浮點型仍是整形都會返回true,其餘時候會返回false。
let a= 11/4;
console.log(Number.isFinite(a));//true
console.log(Number.isFinite('jspang'));//false
console.log(Number.isFinite(NaN));//false
console.log(Number.isFinite(undefined));//false
```es6
#### 判斷是否爲整數Number.isInteger(xx)
let a=123.1;
console.log(Number.isInteger(a)); //falseweb
#### 整數轉換Number.parseInt(xxx)和浮點型轉換Number.parseFloat(xxx)
let a='9.18';
console.log(Number.parseInt(a));
console.log(Number.parseFloat(a));
```npm