摘要:注意問(wèn)題,不在是運(yùn)行時(shí)所在的對(duì)象箭頭函數(shù)里面沒(méi)有用箭頭函數(shù)不能當(dāng)構(gòu)造函數(shù)下一篇入門(mén)到進(jìn)階二循環(huán)數(shù)組對(duì)象參考視頻資料經(jīng)典入門(mén)到進(jìn)階
一、簡(jiǎn)介
ES6 -> ECMA 標(biāo)準(zhǔn)
ES6 -> 2015年6月 ES6.0
每年6月份,發(fā)布一個(gè)版本
ES6環(huán)境:
webpack3.x Traceur二、let、const 2.1 關(guān)于定義(聲明)變量
var a=12; 之前
let let a=12 相當(dāng)于之前的 var
const 常量, 定義好了不能改變
2.2 作用域:全局作用域
函數(shù)作用域
2.3 let注意1.沒(méi)有預(yù)解析,不存在變量提升
在代碼塊內(nèi),只要let定義變量,在之前使用,都是報(bào)錯(cuò) 先定義完,再使用
2.同一個(gè)作用域里, 不能重復(fù)定義變量,可以賦值
3.for循環(huán),for循環(huán)里面是父級(jí)作用域,里面又一個(gè)
for(let i = 0; i<3; i++){ let i = "abc"; console.log(i); }2.4 塊級(jí)作用域:
{ //塊級(jí)作用域 } {{{{let a = 12}}}} if(){xx} for(){} while(){}2.5 const: 特性和let一樣
const定義變量不能修改const定義完變量,必須有值,不能后賦值,不能修改,一般定義配置文件。
但是對(duì)象是可以修改的,因?yàn)樗且?/b>
凍結(jié):Object.freeze(對(duì)象),就可以不被修改。
const config={ host: username: password: version: } { //TODO } IIFE,立即執(zhí)行匿名函數(shù) (function(){ //TODO })()
建議:
以后 就用 let 不要在使用var const http = require("http");三、解構(gòu)賦值(重要,常用)
* 非常有用,特別在做數(shù)據(jù)交互 ajax3.1 格式
let [a,b,c] =[12,5, 6]; 注意: 左右兩邊,結(jié)構(gòu)格式要保持一致 json: let {name,age, job} = { name:"Strive", age:18, job:"碼畜" };
別名:
let {name:n,age:g, job:a} = json;3.2 解構(gòu)時(shí)候可以給默認(rèn)值
let [a,b, c="默認(rèn)值"] = ["aaa","bbb"];
注意:null和undefined,null是一個(gè)對(duì)象,有值
let a = 12; let b = 5; import {a,b,c} from "./mod"四、字符串模板(常用) 4.1 字符串模板:``
優(yōu)點(diǎn): 可以隨意換行 `${變量名字}`
字符串連接(以前用:+ ),要死人的。
現(xiàn)在:${變量名字}
let name ="Strive"; let age = 18; let str = `這個(gè)人叫${name}, 年齡是 ${age}歲`;4.2 關(guān)于字符串一些東西
字符串查找:
str.indexOf(要找的東西) 返回索引(位置) ,沒(méi)找到返回-1 str.includes(要找的東西) 返回值 true/false
判斷瀏覽器: includes
字符串是否以誰(shuí)開(kāi)頭:
str.startsWith(檢測(cè)東西) 檢測(cè)地址
字符串是否以誰(shuí)結(jié)尾:
str.endsWith(檢測(cè)東西) .png
重復(fù)字符串:
str.repeat(次數(shù));
填充字符串:
str.padStart(整個(gè)字符串長(zhǎng)度, 填充東西) 往前填充 str.padEnd(整個(gè)字符串長(zhǎng)度, 填充東西) 往后填充 str.padStart(str.length+padStr.length, padStr)五、函數(shù)(重要) 5.1 函數(shù)變化
1. 函數(shù)默認(rèn)參數(shù) function show({x=0,y=0}={}){ console.log(x,y); } show() 2. 函數(shù)參數(shù)默認(rèn)已經(jīng)定義了,不能再使用let,const聲明 function show(a=18){ let a = 101; //錯(cuò)誤 console.log(a); } show()5.2 擴(kuò)展運(yùn)算符、Rest運(yùn)算符:
擴(kuò)展運(yùn)算符:...
展開(kāi)數(shù)組:
... : [1,2,3,4] -> ... [1,2,3,4] -> 1,2,3,4,5 ...: 1,2,3,4,5 -> ...1,2,3,4,5 -> [1,2,3,4,5]
剩余參數(shù): 必須放到最后
function show(a,b,...c){ console.log(a,b); console.log(c); } show(1,2,3,4,5)5.3 箭頭函數(shù):(重要,常用)
=>
let show = () => 1;
格式:
() => return東西 或者 () =>{ 語(yǔ)句 return }
例子:
var f = v => v; //等同于 var f = function(v){ return v; } var sum = (num1,num2) => num1 + num2; //等同于 var sum = function(num1,num2){ return num1 + num2; } [1,2,3].map(function (x) { return x * x; }); //箭頭函數(shù)寫(xiě)法 [1,2,3].map(x => x *x); //簡(jiǎn)潔了許多
從例子我們可以看出,省略了function,花括號(hào){}用=>代替了。這種寫(xiě)法更簡(jiǎn)潔了。
注意:
this問(wèn)題, ,不在是運(yùn)行時(shí)所在的對(duì)象
箭頭函數(shù)里面沒(méi)有arguments, 用 ‘...’
箭頭函數(shù)不能當(dāng)構(gòu)造函數(shù)
下一篇:ES6入門(mén)到進(jìn)階(二):循環(huán)、數(shù)組、對(duì)象參考視頻資料:ES6經(jīng)典入門(mén)到進(jìn)階
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/107577.html
摘要:優(yōu)點(diǎn)按需加載可以寫(xiě)中路徑也可以動(dòng)態(tài)加以后默認(rèn)就是嚴(yán)格模式,默認(rèn)嚴(yán)格模式完參考視頻資料經(jīng)典入門(mén)到進(jìn)階 上一篇:ES6入門(mén)到進(jìn)階(一):let、解構(gòu)賦值、字符串模板、函數(shù) 一、循環(huán) ES5里面新增一些東西 1.1 arr.forEach()(常用) 1. for for(let i=0; i [{t:aaaa}] let arr = [ ...
摘要:凍結(jié)對(duì)象未定義就聲明的變量會(huì)默認(rèn)為全局的變量,的變量都?xì)w所有,命令命令命令聲明的全局變量,不屬于頂層對(duì)象的屬性即不會(huì)歸所有總結(jié)的六種聲明變量注意在瀏覽器環(huán)境指的是對(duì)象,在指的是對(duì)象。參數(shù)搭配的變量是一個(gè)數(shù)組,該變量將多余的參數(shù)放入數(shù)組中。 1.var,let,const區(qū)別 答:(1).var有變量聲明提升,let&&const沒(méi)有,這樣導(dǎo)致了let,const必須聲明后才可以訪問(wèn)...
摘要:快速入門(mén)簡(jiǎn)介以下簡(jiǎn)稱(chēng)是語(yǔ)言的下一代標(biāo)準(zhǔn),已經(jīng)在年月正式發(fā)布了。而且聲明后必須立即初始化賦值,不能后面賦值。方法默認(rèn)返回實(shí)例對(duì)象即,可以指定返回另外一個(gè)對(duì)象。參數(shù)搭配的變量是一個(gè)數(shù)組,該變量將多余的參數(shù)放入數(shù)組中。 es6快速入門(mén) showImg(https://segmentfault.com/img/remote/1460000008519223?w=560&h=314); ES6簡(jiǎn)...
摘要:返回一個(gè)對(duì)象,遍歷對(duì)象自身和繼承的所有可枚舉屬性不含,與相同和在紅寶書(shū)中就已經(jīng)提到過(guò)屬性,表示的是引用類(lèi)型實(shí)例的一個(gè)內(nèi)部指針,指向該實(shí)例的構(gòu)造函數(shù)的原型對(duì)象。 半個(gè)月前就決定要將ES6的學(xué)習(xí)總結(jié)一遍,結(jié)果拖延癥一犯,半個(gè)月就過(guò)去了,現(xiàn)在補(bǔ)起來(lái),慚愧慚愧。 阮一峰的《ES6標(biāo)準(zhǔn)入門(mén)》這本書(shū)有300頁(yè)左右,除了幾個(gè)新的API和js語(yǔ)法的擴(kuò)展,真正有價(jià)值的內(nèi)容并不多。所謂存在即合理,每部分的...
摘要:情況一情況二這兩種情況,根據(jù)的規(guī)定都是非法的。的作用域與命令相同只在聲明所在的塊級(jí)作用域內(nèi)有效。因此,將一個(gè)對(duì)象聲明為常量必須非常小心。頂層對(duì)象的屬性與全局變量掛鉤,被認(rèn)為時(shí)語(yǔ)言最大的設(shè)計(jì)敗筆之一。 這是ES6的入門(mén)篇教程的筆記,網(wǎng)址:鏈接描述,以下內(nèi)容中粗體+斜體表示大標(biāo)題,粗體是小標(biāo)題,還有一些重點(diǎn);斜體表示對(duì)于自身,還需要下功夫?qū)W習(xí)的內(nèi)容。這里面有一些自己的見(jiàn)解,所以若是發(fā)現(xiàn)問(wèn)題...
閱讀 1075·2021-10-19 11:42
閱讀 3038·2021-09-10 10:51
閱讀 744·2021-09-09 09:33
閱讀 1820·2021-09-01 10:43
閱讀 2817·2019-08-30 12:43
閱讀 3559·2019-08-30 11:24
閱讀 2240·2019-08-30 10:56
閱讀 2816·2019-08-29 11:00