js笔试题(6)

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属性在构造方法中进行初始化,会抛出异常。

5.下列关于闭包描述正确的是?()

猜你喜欢

转载自blog.csdn.net/qq_59076775/article/details/127458248
今日推荐