每日3題
1 以下代碼執(zhí)行后蟹肘,控制臺(tái)中的輸出內(nèi)容為讽挟?
class A {
static a = "123";
}
class B extends A {}
console.log(B.a);
2 以下3句語句碳胳,哪句是合法的
1.toString();
1..toString();
1...toString();
3 以下代碼執(zhí)行后递沪,控制臺(tái)中的輸出內(nèi)容為豺鼻?
const a = [
[0, 1],
[2, 3],
].reduce(
(pre, cur) => {
return pre.concat(cur);
},
[1, 2]
);
console.log(a);
- 公眾號(hào)【今天也要寫bug】更多前端面試題
答案及解析
1
// 答案:123
// 考察:ES6 class
// JS 中,類是特殊的函數(shù)
// typeof A = 'function'
// 所以 A款慨、B 同時(shí)也是對(duì)象
// B 繼承 A 以后儒飒,B.__proto__ 指向 A
class A {
static a = "123"; // 靜態(tài)屬性直屬于 A
}
class B extends A {}
console.log(B.a); // B.a 順著原型鏈找到 A.a 故輸出 123
2
// 如果對(duì)數(shù)字字面量使用方法,. 會(huì)被優(yōu)先識(shí)別為小數(shù)點(diǎn)
// 在 JS 中, .1 1. 都是合法的數(shù)字
1.toString(); // 相當(dāng)于(1.)toString()檩奠,明顯錯(cuò)誤
1..toString(); // 相當(dāng)于(1.).toString()桩了,合法
1...toString(); // 相當(dāng)于(1.)..toSring(),非法
3
// 答案:[ 1, 2, 0, 1, 2, 3 ]
// 考察數(shù)組常用方法
// concat 用來拼接數(shù)組埠戳,返回新數(shù)組
// reduce 用來遍歷數(shù)組井誉,得到一個(gè)計(jì)算值
const a = [
[0, 1],
[2, 3],
].reduce(
(pre, cur) => {
return pre.concat(cur);
},
[1, 2]
);
console.log(a); // [ 1, 2, 0, 1, 2, 3 ]