题目描述:写出执行结果,并解释原因
function showCase(value){
switch(value){
case 'A':
console.log('case A');
break;
case 'B':
console.log('case B');
break;
case undefined:
console.log('undefined');
break;
default:
console.log('Do not know');
}
}
showCase(new String('A'));
答案:
'Do not know'
解析:
- switch 是严格比较(===)
- String 实例和字符串是不一样的,String实例是对象类型,而字符串是 string 类型
- eg. var str1='aa', str2 = new String('aa');typeof str1 //'string'。 typeof str2 // 'object'