ES6面試題總結

2022-06-18 06:57:08 字數 2630 閱讀 5008

1、說出至少5個es6的新特性,並簡述它們的作用。(簡答題)

1.let關鍵字,用於宣告只在塊級作用域起作用的變數;

2.const關鍵字,用於宣告乙個常量;

3.結構賦值,一種新的變數賦值方式。常用於交換變數值,提取函式返回值,設定預設值;

4.symbol資料型別,定義乙個獨一無二的值;

5.proxy**,用於編寫處理函式,來攔截目標物件的操作;

6.for...of遍歷,可遍歷具有iterator介面的資料結構;

7.set結構,儲存不重複的成員值的集合;

8.map結構,鍵名可以是任何型別的鍵值對集合;

9.promise物件,更合理、規範地處理非同步操作;

10.class類定義類和更簡便地實現類的繼承;

2、使用結構賦值,實現兩個變數的值的交換(程式設計題)

let a = 1;let b = 2;

[a,b] = [b,a];

3、使用結構賦值,完成函式的引數預設值(程式設計題)

function demo();

4、利用陣列推導,計算出陣列[1,2,3,4]每乙個元素的平方並組成新的陣列(程式設計題)

var arr1 =  [1,2,3,4】;

var arr2 = [for(i of arr1) i * i];

console.log(arr2);

5、使用模板字串改寫下面的**。(es5 to es6改寫題)

es5:

let iam = "我是";

let name = "huhu";

es6:

let iam = `我是`;

let name = `huhu`;

6、用物件的簡潔表示法改寫下面的**。(es5 to es6改寫題)

es5:

let name = "huhu";

let obj = ;要求使用proxy物件對其進行攔截處理,name屬性對外為"

《es6入門到懵逼》",price屬性為唯讀。(練習題)

let book  = ;

let proxy = new proxy(book,else

},    

set:function(target,property,value)

}});

10、關於set結構,閱讀下面的**,回答問題。

let s = new set();

s.add([1]);

s.add([1]);

console.log(s.size);

列印出來的size的值是多少?

列印出來的size值是2,如果想回答是1的,多必是記得set結構是不會儲存相同的值。其實在這個案例中,兩個陣列 [1] 並不是同乙個值,它們分別定義的陣列,在記憶體中分別對應著不同的

儲存位址,因此並不是相同的值。所以都能儲存到set結構中,size為2;

11、關於map結構, 閱讀下面的**,回答問題。(**閱讀題)

let map = new map();

map.set([1],"es6系列");

let con = map.get([1]);

console.log(con);

問:列印出來的變數 con 的值是多少,為什麼?

答:undefined。因為set的時候用的陣列 [1] 和 get的時候用的陣列 [1] 是分別兩個不同的陣列,只不過它們元素都是 1。它們是分別定義的兩個陣列,並不是同乙個值。新手避免在這裡犯錯。

如果想達到預期的效果,你要保證 get 的時候和 set的時候用同乙個陣列。比如:

let map = new map();

let arr = [1];

map.set(arr,"es6系列");

let con = map.get(arr);

console.log(con); // es6系列

12、定義乙個類 animal,通過傳參初始化它的型別,如:「貓科類」。它有乙個例項方法:run,run函式體內容可自行定義。

class animal,

run()

}13、基於第12題的animal類,定義乙個子類cat並繼承animal類。初始化cat類的暱稱name和年齡age。並擁有例項方法eat,eat函式體內容可自行定義。

class cat extends animal,

eat()

}

js高階面試題總結(es6)

1 模組化 通過import 來呼叫其他js檔案中export的的模組 exp1.js export default exp2.js export function fn1 export function fn2 imp.js 匯入 import exp1 from exp1.js import f...

Es6 建立面試題

var 1.不受限於塊級作用域 2.可以重複宣告變數 3.宣告的變數存在宣告提公升,變數可以在宣告之前呼叫,值 underfind 宣告提公升 就是將變數提公升到當前作用域的最頂部 let和const 1.受限於塊級作用域 2.有暫時性死區 3.不能重複宣告變數 4.變數不存在宣告提公升,一定在宣告...

前端面試題 ES6

1.反引號 標識 模板字串 template string 是增強版的字串,用反引號 標識,它可以當作普通字串使用,也可以用來定義多行字串,或者在字串中嵌入變數 var name bob time today hello how are you hello bob,how are you today...