成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

ES6入門(mén)到進(jìn)階(一):let、解構(gòu)賦值、字符串模板、函數(shù)

WalkerXu / 1263人閱讀

摘要:注意問(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ù)交互  ajax
3.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

相關(guān)文章

  • ES6入門(mén)進(jìn)階(二):循環(huán)、數(shù)組、對(duì)象

    摘要:優(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 = [ ...

    JerryZou 評(píng)論0 收藏0
  • ES6知識(shí)拾遺,再讀ES6入門(mén)書(shū)籍總匯

    摘要:凍結(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)...

    thekingisalwaysluc 評(píng)論0 收藏0
  • es6快速入門(mé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)...

    liujs 評(píng)論0 收藏0
  • ES6學(xué)習(xí)總結(jié)(1)

    摘要:返回一個(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)容并不多。所謂存在即合理,每部分的...

    happyfish 評(píng)論0 收藏0
  • ES6

    摘要:情況一情況二這兩種情況,根據(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)題...

    AZmake 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<