这几道JS面试刁钻题,你能答对吗
前端_杭州求职中
第一题:下面代码输出的结果是什么?
[1,2,3].map(parseInt)
通过分析可知,上述代码就相当于:
parseInt('1',0) // 相当于 parseInt('1') 所以答案就是 1 parseInt('2',1) // 把2当做1进制来理解 parseInt('3',2) // 把3当做2进制来理解
所以最终的答案就是:1 NaN NaN
第二题:a.x 的值是什么?
var a = {name:'a'} a.x = a ={}
直接说答案吧,因为这道题我也不会,会的小伙伴在评论区赐教呀。😝
答案:undefined
第三题:(a==1 && a==2 && a==3)可能为true吗?
//利用 == 会调用 valueOf() 的特性 var a = { value: 1, valueOf(){ return this.value++ } } a ==1 && a== 2 && a==3 // true
//利用 a 会读取 window.a 的特性 var value = 1; Object.defineProperty(window, 'a', { get(){ return value++; } }) a ==1 && a== 2 && a==3 // true // 或者 a ===1 && a=== 2 && a===3 // true
告诫自己,即使再累也不要忘记学习,成功没有捷径可走,只有一步接着一步走下去。 共勉!
到此这篇关于这几道JS面试刁钻题,你能答对吗的文章就介绍到这了,更多相关JS面试题内容请搜索脚本之家以前的文章或继续浏览下面的相关文章,希望大家以后多多支持脚本之家!