1. console.log(${(x=>x)('I love ')} to program)
A挚冤、 I love to program
B像街、undefined to program
C、${(x=>x)('I love ')} to program
D镰绎、 TypeError
2. const name = 'Livall'? ? console.log(name())
A畴栖、 SyntaxError
B、 ReferenceError
C吗讶、 TypeError
D燎猛、 undefined
3. const colorConfig = {? ? ? ? ?
? ? red:true,
? ? blue:false,
? ? green:true,
? ? black:true,
? ? yellow:false
}
const colors = ['pink','red','blue']
console.log(colorConfig.colors[1])
? A、 true? ? ? ?
? B照皆、 false? ? ? ?
? C重绷、 undefined? ? ? ?
? D、 TypeError
4.使用那個(gè)構(gòu)造函數(shù)可以成功繼承Dog類
? class Dog {
? ? constructor(name){
? ? ? ? this.name = name;
? ? }
};? ? ? ?
class Labrador extends Dog {
? //1
? constructor (name,size){
? ? this.size = size;
? }? ?
? //2?
? constructor(name,size){
? ? super(name);
? ? this.size = size;
? }? ?
? //3? ?
? constructor(size){
? ? super(name);
? ? this.size = size;
? }? ?
? //4
? constructor(){
? ? this.name = name;
? ? this.size = size;
? }
}
A膜毁、 1
B论寨、 2?
C、 3?
D爽茴、 4
5.console.log([[0,1],[2,3]].reduce(`
? ? (acc,cur) =>{
? ? ? ? return acc.concat(cur);
? ? },[1,2])
)
A葬凳、 [0,1,2,3,1,2]
B、 [6,1,2]
C室奏、 [1,2,0,1,2,3]
D火焰、 [1,2,6]
參考答案
1.帶有模版字面量的表達(dá)式首先被執(zhí)行。相當(dāng)于字符串會(huì)包含表達(dá)式胧沫,這個(gè)立即執(zhí)行函數(shù)(x=>x)('I love')返回的值昌简,我們向箭頭函數(shù)?x=>x?傳遞"I love”作為參數(shù)。x等價(jià)于返回的"I love "?,結(jié)果就是"I love to program"
2.變量name保存字符串的值绒怨,該字符串不是函數(shù)纯赎,因此無(wú)法調(diào)用。當(dāng)值不是預(yù)期類型時(shí)南蹂,會(huì)拋出TypeErrors犬金。JavaScript?期望name是一個(gè)函數(shù),因?yàn)槲覀冊(cè)噲D調(diào)用它六剥。但它是一個(gè)字符串晚顷,因此拋出TypeError:name is not a function
3.JavaScript?嘗試在colorConfig?對(duì)象上找到名為colors的屬性,找不到名為“colors”?的屬性疗疟,因此返回“undefined”?该默,然后,嘗試使用[1]訪問(wèn)第一個(gè)元素的值策彤,我們無(wú)法對(duì)為定義的值執(zhí)行此操作栓袖,因此會(huì)拋出“can not read property '1' of undefined”
4.在子類中匣摘,在調(diào)用super?之前不能訪問(wèn)到this關(guān)鍵字,如果這樣做裹刮,它將會(huì)拋出一個(gè)ReferenceError:"``1"?和"4"?將會(huì)引發(fā)一個(gè)引用錯(cuò)誤音榜。使用super?關(guān)鍵字,需要用給定的參數(shù)來(lái)調(diào)用父類的構(gòu)造函數(shù)必指,父類的構(gòu)造函數(shù)接收name?參數(shù),因此我們需要將name傳遞給super恕洲。Labrador?類接收兩個(gè)參數(shù)塔橡,那么參數(shù)是由于它繼承了Dog,size?作為L(zhǎng)abrador?l類的額外屬性霜第,它們都需要傳遞給Labrador的構(gòu)造函數(shù)葛家,因此使用構(gòu)造函數(shù)2正確完成。
5.[1,2]是初始值泌类,是開(kāi)始執(zhí)行reduce?函數(shù)的初始值癞谒,以及第一個(gè)acc的值,在第一輪中刃榨,acc是[1弹砚,2],cur?是[0,1] ,連起來(lái)的結(jié)果是[1,2,0,1] 。然后acc的值是[1,2,0,1],cur的值為[2,3],連起來(lái)就得到[1,2,0,1,2,3]枢希。