日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ES6--基础语法(一)

發(fā)布時間:2025/7/14 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ES6--基础语法(一) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
一、支持環(huán)境:node.js完全支持,標(biāo)準(zhǔn)瀏覽器完全支持。
二、測試環(huán)境:
chrome下需要在script標(biāo)簽的最先開始的地方需要添加"use strict"。
firefox下需要在script標(biāo)簽的type="application/javascript;version=1.7"。 三、基本語法:
1.變量let:
    1.不能重復(fù)申明變量(var 可以)。
    2.沒有預(yù)解析的過程。(var 有)。 console.log(a);var a = 2;//console.log();undefined; let會報錯。

    3.塊級作用域的使用{ //塊級作用域;代碼塊}

       {//從代碼塊的開始到申明的這段區(qū)域----暫存死區(qū)let a = 2;console.log(a);//可以訪問; }console,log(a);//不可以訪問。應(yīng)用:輸出0-9;的數(shù)字;for(var i = 0;i < 10;i++) {setTimeout(function() {console.log(i);//會輸出10次10, });}for(let i =0; i < 10;i++) {setTimeout(function() {console.log(i);});//0-9; }for(var i = 0; i < 10;i++) {(function(i) {//閉包函數(shù)(自執(zhí)行函數(shù)),循環(huán)一次執(zhí)行一次,相似一{}塊級作用域。setTimeout(function() {console.log(i);});})(i);}   2、常量const:不變的量。常量保存值的時候不能改變,保存的是一個對象的時候可以改變。 const a = 2; a=5;//會報錯。 const b = { name = "assassion" };
b.name = "seafuwg";//對象的話可以修改。   3、解構(gòu)賦值:es6 允許按照一定的規(guī)則,從數(shù)組和對象中取值,對變量賦值。(目前firfox支持詞語法,chrome低版本不支持)
    3.1 數(shù)組:按照順序賦值。
     var arr = [1,2,3]; var [a,b,c] = arr; console.log(a);//1 //eg: 值的交換 let x = 2; let y = 3; let [x,y] = [y,x];     3.2 對象:是按照鍵的名字賦值;方便從對象中取值,值的交換等 let obj = {fn : function() {},name : "assassion",arr : [],obj1 : {}};let {fn,name,obj1} = obj;console.log(fn,name,obj1);   4.字符串的擴(kuò)展
    4.1對一些特殊漢字,及表情的支持占四個字節(jié)的長度 var a1 = "?";console.log(a1.length);console.log(String.fromCodePoint(134071));str.at();//找到對應(yīng)的字符,有些瀏覽器不支持String.codePointAt();//返回漢字所對應(yīng)的碼點(碼值)String.fromCodePoint()//根據(jù)碼點返回對應(yīng)的漢字str.repeat(n);//傳遞一個參數(shù),表示字符串重復(fù)的次數(shù)

    4.2?模板字符串:用反引號,在反引號中用${變量,常量,表達(dá)式,對象...}表示,是增強版的字符串,用反引號(`)標(biāo)識。它可以當(dāng)作普通字符串使用,也可以用來定義多行字符串,或者在字符串中嵌入變量。代碼中的字符串用反引號(`)表示,如果需要引入變量則使用${變量名}, 在{}中可以進(jìn)行運算,也可以引用對象屬性。

var name1 = "assassion";var age1 = 23;var str = "name:"+name1+" age:"+age1+"";console.log(str);var str1 = `name:${name1} age:${age1}`;console.log(str1);     4.3字符串查找的擴(kuò)展方法:和indexOf語法規(guī)則基本相似,indexOf(),返回的是值或者-1。擴(kuò)展的都是ture或者false;
      4.3.1 str.includes();參數(shù):       1、要查找的字符串
      2、起始位置
      返回布爾值,表示是否找到了參數(shù)字符串 let aa = "assassin";console.log(aa.includes("i"));//trueconsole.log(aa.includes("i",5));//trueconsole.log(aa.includes("i",7));//false       4.3.2 str.startsWith()
        參數(shù):
        1、要查找的字符串
        2、起始位置
        返回布爾值,表示參數(shù)字符串是否在源字符串的頭部。 console.log(aa.startsWith("ass"));//trueconsole.log(aa.startsWith("ass",3));//trueconsole.log(aa.startsWith("ass",4));//false       4.3.3str.endsWith()
      參數(shù):
      1、要查找的字符串
      2、起始位置(針對的是n個字符)
       返回布爾值,表示參數(shù)字符串是否在源字符串的尾部。 console.log(aa.endsWith("in"));//trueconsole.log(aa.endsWith("i"));//falseconsole.log(aa.endsWith("i",7));//true 字符串的索引都是從1開始。     5.數(shù)值的擴(kuò)展
      5.1 二進(jìn)制和八進(jìn)制的表示方法:0b和0o;
      5.2 Math函數(shù)的擴(kuò)展:
         5.2.1. Math.trunc();去掉小數(shù)點,Math.trunc(1.92344) = 1;簡單的去掉小數(shù)。
         5.2.2. Math.sign();判斷一個數(shù)是正數(shù),負(fù)數(shù),正0,負(fù)0;
         5.2.3. Math.hypot(a,b);返回兩個數(shù)的平方和的平方根(勾股定理)     6.數(shù)組的擴(kuò)展
      6.1 Array.from();//把類數(shù)組的數(shù)據(jù)轉(zhuǎn)換成數(shù)組 var str1 = "assassin";var str2 = [].slice.call(str1);//以前的方法 console.log(Array.from(str1));console.log(Array.from(str2));       6.2 Array.of();//將一組參數(shù)轉(zhuǎn)換成數(shù)組;類似于new Array(1,2,3,4,5); var arr = Array.of(1,2,3,4,5);       6.3 arr.find();//找出第一個符合條件的數(shù)組元素。         找出第一個符合條件的數(shù)組元素
        參數(shù):
          1、回調(diào)函數(shù)
          2、回調(diào)函數(shù)內(nèi)this的指向
        遍歷整個數(shù)組,遍歷過程中調(diào)用回調(diào)函數(shù),如果回調(diào)函數(shù)的返回值為true,則返回當(dāng)前正在遍歷的元素。如果所有元素都不符合條件則返回undefined var array = [1,2,3,4,5,6,7,8];var n = array.find(function(val,index) {//函數(shù)里面的參數(shù)1:遍歷的元素,參數(shù)2:遍歷的索引return val < 4;});
            console.log(n);//1       6.4 arr.findIndex();找出第一個符合條件的數(shù)組元素的位置         參數(shù):
          1、回調(diào)函數(shù)
          2、回調(diào)函數(shù)內(nèi)this的指向
        遍歷整個數(shù)組,遍歷過程中調(diào)用回調(diào)函數(shù),如果回調(diào)函數(shù)的返回值為true,則返回該數(shù)組元素的位置。如果所有元素都不符合條件則返回-1;和arr.find();方法用法相似,知識返回值不一樣,返回的是數(shù)組的索引。       6.5 arr.fill();用來填充數(shù)組         參數(shù):
          1、填充的內(nèi)容
          2、起始位置
          3、結(jié)束位置 let fillArr = [1,2,3,4,5,6,7,8];let fillArr1 = fillArr.fill(9,fillArr.length+1,length+2);//這樣是無法添加的超出原數(shù)組的長度,知識填充,改變里面的不是添加let fillArr2 = fillArr.fill(9,9,10);//這樣是無法添加的超出原數(shù)組的長度let fillArr3 = fillArr.fill(9,7,8);//這樣是無法添加的超出原數(shù)組的長度console.log(fillArr2); //1,2,3,4,5,6,7,9       6.6 for of:遍歷,只要有遍歷接口就可以遍歷。默認(rèn)的對象是沒有遍歷接口的,會報錯 undefined is not a function。 var arrForOf = [1,2,3,4,5,6];for(let value of arrForOf) {console.log(value);//1,2,3,4,5,6 }for(let val in arrForOf) {console.log(val);//它返回的是索引 0,1,2,3,4,5 }//value:表示值,key: 表示鍵(索引);let arrKey = [1,2,3,4,5,6];for(let key of arrKey.keys()) {console.log(key);//返回的索引 }for(let value of arrKey) {//默認(rèn)的后面添加數(shù)組即可let value of arrKey.values();console.log(value);//返回的索引 }//value:表示值,key: 表示鍵(索引);一起遍歷for(let [key,value] of arrKey.entries() ) {console.log(key,value);}       6.7 數(shù)組推導(dǎo):ES6提供簡潔寫法,允許直接通過現(xiàn)有數(shù)組生成新數(shù)組,字符串也可以。谷歌不支持 var arrInfer = [for(value of arrKey) value*2];//還可以使用判斷等。 console.log(arrInfer);//原來的2倍var arrInfer1 = [for( i of arrKey) if(i > 2) i];console.log(arrInfer1);//數(shù)組大于2的元素

?

?



轉(zhuǎn)載于:https://www.cnblogs.com/intelwisd/p/7863105.html

總結(jié)

以上是生活随笔為你收集整理的ES6--基础语法(一)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。