快手笔试题

1、var a = {x: 1}

   var b = a 

   a.x = a = { n: 1}

   console.log(a)   

   console.log(b)

这道题考的是堆栈内存的知识  还有就是一个重要的知识点:连等的时候的执行顺序从左到右的进行赋值。

如果不会的话参考上一篇博客: https://blog.csdn.net/sinat_36414515/article/details/103992511

下面是结果:

快手笔试题_第1张图片

快手笔试题_第2张图片

//第二题明显考的是原型链的知识:

在函数的原型上定义了一个方法a:alert(1)  在对象的原型上定义了方法b:alert(2)

然后创建了一个构造函数A 又new了一个实例obj 其实这个实例可以访问Object的prototype的方法,因为通过原型链可以访问到,但是不能访问到Function的原型上的方法,因为不在原型链上。

快手笔试题_第3张图片

最终的结果:a不是一个方法,a是访问不到的,b是可以弹出来2的

快手笔试题_第4张图片

//这道题考的是变量的提升和全局的变量  

结果是: a为0     b is not defined    c是function c() {  } 

 

你可能感兴趣的:(面试准备)