当前位置: 首页 > Web前端 > HTML

JavaScript前端面试题篇——2022-09-08

时间:2023-03-28 16:25:58 HTML

每日3题28下面代码执行后,控制台输出什么?functionshowCase(value){switch(value){case'A':console.log('caseA');休息;案例'B':console.log('案例B');休息;案例未定义:控制台。日志(“未定义”);休息;默认值:console.log('不知道');}}showCase(新字符串('A'));29下面的代码执行后,控制台输出什么?函数f(){}consta=f.prototype,b=Object.getPrototypeOf(f);console.log(a===b);30下面代码执行后,控制台输出什么?console.log(typeofnull)console.log(nullinstanceofObject)公众号【我今天也来写bug】前端面试题更多答案解析28//答案:不知道//考察基本字符串和strings对象和switch//字符串字面量是string类型//string对象是object类型//switch使用严格运算符(===)进行比较//后面的switchcase没有匹配的case,所以是defaultfunctionshowCase(value){switch(value){case"A":console.log("caseA");休息;案例“B”:console.log(“案例B”);休息;案例未定义ined:console.log("undefined");休息;默认值:console.log("不知道");}}showCase(newString("A"));29//答案:false//检查原型链//函数本身也是一个对象//作为一个对象,函数是由newFunction构造函数生成的,sof.__proto__=>Function.prototype//函数的f.prototype默认为空对象,与f.__proto__functionf()无关{}consta=f.prototype,b=Object.getPrototypeOf(f);console.log(a===b);//Object.getPrototypeOf方法返回对象的原型对象,即f.__proto__//f.prototype不等于f.__proto__//最终输出false30//answer:objectfalse//检查typeof、instanceof、原型链console.log(typeofnull);//只需要记住typeofnullisobjectconsole.log(nullinstanceofObject);//instanceof操作符用于检测构造函数的prototype属性(右侧)是否出现在实例对象的原型链(左侧)//null是原型链的末尾,Object.prototype肯定不会出现在原型链上的null中