1.执行以下程序,输出结果的大致形状为()
for (r = 0; r < 4;r++){
for (var i = 0,str = '';i < 4;i++) {
str += i < (3-r) ? ' ' : '♥';
}
console.log(str);
}
解析:
双重for循环:
r=0,r<4
i=0;str=''
str+=i<(3-r)?'':'♥'
扫描二维码关注公众号,回复:
14556402 查看本文章
str=str+i<3-0===========>''+0<3 ===>str=''
什么时候输出'♥'?
当i等于3的时候,输出♥。
第一轮循环结束
r=1的时候输出两个爱心。
2.要求匹配以下16进制颜色值,正则表达式可以为:
解析:正确答案: B
3.下列表达式中,返回值为true的是()
解析:
Object.is()与===都是判断两个数是否严格相等。它们的区别主要在NaN自身和+0与-0的判断。对于NaN自身的判断,Object.is(NaN,NaN)的返回结果为true,而NaN===NaN的返回结果为false;对于+0、-0的判断,Object.is(+0,-0)的返回结果为false,而+0===-0的返回结果为true,故A选项正确。
4.执行以下程序,输出结果为()
class Phone{
constructor(price){
this.price = price;
}
get price(){
return 999;
}
}
var p = new Phone(888);
console.log(p.price);
解析:当类中一个属性只有get()方法而无set()方法时,该属性是无法进行赋值的,连构造方法中的初始化都不行,因此,当对象的price属性在构造方法中进行初始化,会抛出异常。