模板字串 箭頭函式 三點運算子 解構賦值

2021-08-21 03:46:11 字數 1749 閱讀 3715

-let 1、只能在當前的**塊中有效 2、let變數不能提公升 3、不能重複宣告 4、for迴圈體現let父子作用域

- cosnt 1、 宣告必須賦值,

var obj = 

//模板字串

console.log('名字'+obj.name+'年齡'+obj.age);

//`名字:$ 年齡:$`

console.log(`名字:$ 年齡:$`);

var a=1;

var b=2;

var obj1=

}console.log(obj1);

**一般形式**:

let fn1=(x,y)=>

fn1();

**/* 注意this指向的問題:箭頭函式的this指向不是在呼叫時決定的,而是在定義的時候決定的

* 1、如果外部有函式,那麼this指向外部函式的this

* 2、如果外部沒有函式,指向window*/**

總結:箭頭函式將它的詞法作用域繫結在原來的上下文中箭頭後面只有一條執行語句時,大括號可以不寫,此時執行後的語句會預設有返回值。

// 當函式體只有一條語句的時候{}可省略不寫, 當{}省略不寫的時候會自動返回當前語句的執行結果;

let fun4 = (x, y) => ;

console.log(fun4(4, 1));   //5

let obj={};

let fn1=(x,y)=>

f4.call(obj);

} fn3.call(obj); //call不會改變箭頭函式的this指向}

fn1.call(obj);//call會改變普通函式的this指向

function foo2()

fn1();

}foo2.call(obj); //call會改變this指向

//三點運算子可以將偽陣列轉換為真陣列

function args(a,b,c,d)

args(1,2,3,4);

//函式中的應用:真陣列

function foo(...args)

foo(1,2);

//陣列中的應用

let arr1=[1,2];

let arr2=[3,...arr1,4];

console.log(arr2); //[3, 1, 2, 4]

function foo(x=1,y=2)

var f=new foo(); //沒有實參,執行形參預設值

console.log(f);

var p=new foo(4,5); //有實參,執行實參中的值

console.log(p);

// 2 物件的解構賦值

let obj = ;

let = obj;

console.log(age);

//3. 陣列的解構賦值  不經常用

let arr=[1,2,4,'ni'];

let [,,,r] = arr;

三點運算子( )的使用

作用 1 它可以將多餘的引數在行參進行合併,成為陣列 function test a b test 1 gta5 gtasa 作用 2 可以將陣列轉成對應的字串 var a a b c d function test test 作用 3 可以將字串轉成陣列 var a abcd function t...

模板字串 標籤模板 擴充套件運算子

一 模板字串 可以接受回車換行或空格 回車換行和空格最終可以體現到dom中 變數的嵌入很方便 1.例如 let titel 哈哈 let str let str1 2.多行字串可以用 n 換行,則在頁面上自動顯示換行。let str i can do n you can 二 標籤模板 含義 標籤指的...

三點運算子使用方法

先看乙個es6規範下三點運算子的使用例項 let fun function a,list fun 0 a b c 0 a,b,c 以上可以看到我們現在在定義函式物件時可以動態設定引數的個數了 第乙個引數a是普通引數 忽略 大家可以看到第二個引數list前面有三個點 這種寫法在es6規範中有兩個用途 ...