欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

ES6學(xué)習(xí)筆記之字符串、數(shù)組、對(duì)象、函數(shù)新增知識(shí)點(diǎn)實(shí)例分析

 更新時(shí)間:2020年01月22日 11:19:51   作者:theVicTory  
這篇文章主要介紹了ES6學(xué)習(xí)筆記之字符串、數(shù)組、對(duì)象、函數(shù)新增知識(shí)點(diǎn),結(jié)合實(shí)例形式分析了ES6字符串、數(shù)組、對(duì)象、函數(shù)新增知識(shí)點(diǎn)、使用技巧與操作注意事項(xiàng),需要的朋友可以參考下

本文實(shí)例講述了ES6學(xué)習(xí)筆記之字符串、數(shù)組、對(duì)象、函數(shù)新增知識(shí)點(diǎn)。分享給大家供大家參考,具體如下:

1、模板字符串

反引號(hào)`` 內(nèi)用于輸入格式化的字符串文本,在``內(nèi)可以將表達(dá)式用${}包含起來(lái)

  let str=`
    <!DOCTYPE html>
      <html lang="en">
        <body>
          <div>
            <p class="pClass">格式化字符串</p>
          </div>
        </body>
      </html>
  `;
  console.log(str);

2、轉(zhuǎn)化為數(shù)組

Array.form將偽數(shù)組、集合轉(zhuǎn)化為數(shù)組

let allLi=document.querySelectorAll('li');
console.log(Array.isArray(allLi));//輸出false,allLi不是個(gè)數(shù)組
let arr=Array.from(allLi);
console.log(Array.isArray(arr));//輸出true,arr被轉(zhuǎn)化為數(shù)組

Array.of將元素構(gòu)建為數(shù)組

let arrayOf=Array.of('str',2,{});  //創(chuàng)建由字符串、數(shù)字、對(duì)象構(gòu)成的數(shù)組
let arr=Array.of(7);         //數(shù)組包含一個(gè)元素7
let arr=Array(7);          //數(shù)組包含7個(gè)空元素

3、類(lèi)的封裝

通過(guò)class來(lái)包裝類(lèi)

  class Person{    
    constructor(name,age){  //Person類(lèi)的構(gòu)造函數(shù)
      this.name=name;
      this.age=age;
    }
    
     print(){        //類(lèi)函數(shù)輸出
      console.log("My name is "+this.name+",I'm "+this.age+" years.");
    }
  }
  let p=new Person('tony',15);
  p.print();

4、對(duì)象的使用

在用變量作為對(duì)象的元素時(shí),會(huì)將變量名作為鍵值,將變量值作為值

let name='tony';
let age=15;
let person={
  name,
  age
}  
console.log(person);

輸出結(jié)果為:

Object { name: "tony", age: 15 }

Object.assign()方法實(shí)現(xiàn)對(duì)象合并,參數(shù)為:合并目標(biāo),合并源1,合并源2...

let obj1={'name':'tony'};
let obj2={'age':15};
let obj3={'sex':'男'};
let obj={};
Object.assign(obj,obj1,obj2,obj3);  //將后面的對(duì)象并到第一個(gè)對(duì)象
console.log(obj);

輸出為:

Object { name: "tony", age: 15, sex: "男" }

5、延展操作符...

將整體字符串、對(duì)象等拆成單個(gè)元素  

let str="這是一個(gè)字符串";
let arr=[...str];
console.log(arr);

輸出為:

6、函數(shù)Rest參數(shù)

當(dāng)不確定傳入的參數(shù)個(gè)數(shù)時(shí),可以采用"...參數(shù)"的方式,然后遍歷操作每個(gè)參數(shù)

  function sum(name,...num) {
    console.log(name);
    let res=0;
    for (let value of num){  //將后面未知個(gè)數(shù)的參數(shù)當(dāng)作數(shù)組num遍歷
      res+=value;      
    }
    return res;
  }
  console.log(sum('tony',10,2,3));

7、箭頭函數(shù)

箭頭函數(shù)可以將函數(shù)function (參數(shù)) {表達(dá)式}簡(jiǎn)化為:(參數(shù)...)=>{表達(dá)式...},無(wú)需輸入function,甚至省略(),{},return。

1、當(dāng)只有一個(gè)參數(shù)時(shí),可以寫(xiě)為參數(shù) => 表達(dá)式,例如使用map函數(shù)遍歷一個(gè)數(shù)組,使每個(gè)元素乘2:

var arr = [1, 4, 9, 16];
const map1 = arr.map(x => x * 2);  //利用map()遍歷數(shù)組,傳入一個(gè)參數(shù)當(dāng)作x,并返回x*2

map中的函數(shù)以x為參數(shù)遍歷每個(gè)arr中的元素,*2之后自動(dòng)返回,形成map1數(shù)組

2、當(dāng)有多個(gè)參數(shù)時(shí),需要給參數(shù)加括號(hào):() =>表達(dá)式,例如遍歷數(shù)組輸出索引與值:

let arr=['data0','data1','data2'];
arr.forEach((value,index)=>   //通過(guò)forEach遍歷數(shù)組,傳入兩個(gè)參數(shù)value與index
  console.log(index+':'+value)
);

輸出如下:

3、當(dāng)有多行表達(dá)式時(shí),要用{}將函數(shù)包含成一塊:() =>{},并且使用塊語(yǔ)句時(shí),函數(shù)不會(huì)自動(dòng)返回值,需要使用return將值返回。

4、JavaScript的{}也可以表示一個(gè)對(duì)象,當(dāng)使用箭頭函數(shù)返回對(duì)象時(shí),為了與函數(shù)體區(qū)別需要將對(duì)象用()包含起來(lái):() =>({}),否則會(huì)報(bào)錯(cuò),例如在react中使用setState方法,需要返回一個(gè)對(duì)象:

this.setState((prevState) =>({
  flag: !prevState.flag
}))

8、Promise函數(shù)

在使用接口調(diào)用時(shí),有時(shí)需要根據(jù)調(diào)用返回是否成功分別去調(diào)用不同的函數(shù),ES6提供了Promise函數(shù)來(lái)解決這個(gè)問(wèn)題。在調(diào)用成功時(shí),執(zhí)行.then方法,失敗時(shí)執(zhí)行.catch方法來(lái)分別處理不同情況,返回不同的數(shù)據(jù)。

例如定義一個(gè)檢查登陸的Promise方法,當(dāng)傳入?yún)?shù)為true時(shí)登陸成功,回調(diào)函數(shù)為then,false失敗,調(diào)用catch:

    //定義promise函數(shù)
    let checkLog=function (flag) {    
     return new Promise(function(resolve,reject){
      if(flag){        //如果判定條件為真,執(zhí)行resolve函數(shù)
       resolve({       //其括號(hào)內(nèi)的參數(shù)作為結(jié)果返回
        status:1,
        info:"登陸成功"
       })
      }else{          //判定為假執(zhí)行reject函數(shù)
       reject({
        status:0,
        info:"登陸失敗"
        }
       )
      }
     })
    };
    //使用promise函數(shù)
    checkLog(false).then(res=>{  //根據(jù)promise返回的不同值分別執(zhí)行then或catch
     console.log(`成功信息:${res.info}`);
    }).catch(err=>{
     console.log(`錯(cuò)誤信息:${err.info}`);
    })

當(dāng)傳入true:當(dāng)傳入false:

感興趣的朋友可以使用在線(xiàn)HTML/CSS/JavaScript代碼運(yùn)行工具http://tools.jb51.net/code/HtmlJsRun測(cè)試上述代碼運(yùn)行效果。

更多關(guān)于JavaScript相關(guān)內(nèi)容可查看本站專(zhuān)題:《javascript面向?qū)ο笕腴T(mén)教程》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)

希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • JS對(duì)象數(shù)組中如何匹配某個(gè)屬性值

    JS對(duì)象數(shù)組中如何匹配某個(gè)屬性值

    這篇文章主要介紹了JS對(duì)象數(shù)組中如何匹配某個(gè)屬性值,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • 一篇文章搞定JavaScript類(lèi)型轉(zhuǎn)換(面試常見(jiàn))

    一篇文章搞定JavaScript類(lèi)型轉(zhuǎn)換(面試常見(jiàn))

    這篇文章主要介紹了一篇文章搞定JavaScript類(lèi)型轉(zhuǎn)換(面試常見(jiàn)),非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下吧
    2017-01-01
  • JS命令模式例子之菜單程序

    JS命令模式例子之菜單程序

    這篇文章主要為大家詳細(xì)介紹了JS命令模式例子之菜單程序,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • js獲取微信版本號(hào)的方法

    js獲取微信版本號(hào)的方法

    本文給大家分享的是使用javascript實(shí)現(xiàn)判斷微信版本號(hào)以及判斷是否在內(nèi)置的微信瀏覽器中打開(kāi)的代碼,十分的簡(jiǎn)單實(shí)用,有需要的小伙伴可以參考下。
    2015-05-05
  • js手動(dòng)播放圖片實(shí)現(xiàn)圖片輪播效果

    js手動(dòng)播放圖片實(shí)現(xiàn)圖片輪播效果

    這篇文章主要為大家詳細(xì)介紹了js手動(dòng)播放圖片實(shí)現(xiàn)圖片輪播效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • typescript中正則表達(dá)式的常用使用方法

    typescript中正則表達(dá)式的常用使用方法

    這篇文章主要給大家介紹了關(guān)于typescript中正則表達(dá)式的常用使用方法,TypeScript是一種靜態(tài)類(lèi)型的JavaScript超集,它提供了對(duì)正則表達(dá)式的全面支持,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-11-11
  • ES6解構(gòu)賦值(數(shù)組,對(duì)象,函數(shù))使用詳解

    ES6解構(gòu)賦值(數(shù)組,對(duì)象,函數(shù))使用詳解

    這篇文章主要介紹了ES6解構(gòu)賦值(數(shù)組,對(duì)象,函數(shù))使用詳解,JavaScript 中最常用的兩種數(shù)據(jù)結(jié)構(gòu)是 Object 和 Array,解構(gòu)操作對(duì)那些具有很多參數(shù)和默認(rèn)值等的函數(shù)也很奏效,本文通過(guò)實(shí)例代碼詳細(xì)講解需要的朋友可以參考下
    2022-11-11
  • 微信小程序?qū)崿F(xiàn)簡(jiǎn)單的select下拉框

    微信小程序?qū)崿F(xiàn)簡(jiǎn)單的select下拉框

    這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)簡(jiǎn)單的select下拉框,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • JavaScript隨機(jī)排序(隨即出牌)

    JavaScript隨機(jī)排序(隨即出牌)

    JavaScript隨機(jī)排序,自動(dòng)抽取中文與英文字母,重新組合并隨機(jī)排序,生成隨機(jī)數(shù)很可以。
    2010-09-09
  • 使用JS在瀏覽器中判斷當(dāng)前網(wǎng)絡(luò)連接狀態(tài)的幾種方法

    使用JS在瀏覽器中判斷當(dāng)前網(wǎng)絡(luò)連接狀態(tài)的幾種方法

    本篇文章主要介紹了使用JS在瀏覽器中判斷當(dāng)前網(wǎng)絡(luò)狀態(tài)的幾種方法,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2017-05-05

最新評(píng)論