当前位置 博文首页 > 前端开发博客:一周热文和最新 JS 进阶六题附答案 #4

    前端开发博客:一周热文和最新 JS 进阶六题附答案 #4

    作者:[db:作者] 时间:2021-07-03 16:05

    点击下方“前端开发博客”关注公众号

    回复“面试”获取面试精选文章

    忙碌的一周过去了,一起来汇总一下前端开发博客最近一周有哪些值得阅读的东西吧。

    上周总结

    文章排行

    1. 一文帮你搞定90%的JS手写题

    2. 几个优雅的JavaScript运算符使用技巧

    3. 9种JavaScript数组去重的高阶方法

    4. NodeJS有难度的面试题,你能答对几个?

    5. Web登录其实没那么简单

    6. 小程序用户登录架构设计

    7. H5常见问题及解决方案手册

    最新试题

    31. 当点击按钮时,event.target是什么?

    <div?onclick="console.log('first?div')">
    ??<div?onclick="console.log('second?div')">
    ????<button?onclick="console.log('button')">
    ??????Click!
    ????</button>
    ??</div>
    </div>
    
    • A: Outer div

    • B: Inner div

    • C: button

    • D: 一个包含所有嵌套元素的数组。

    答案: C

    导致事件的最深嵌套的元素是事件的 target。你可以通过 event.stopPropagation 来停止冒泡。


    32. 当您单击该段落时,日志输出是什么?
    <div?onclick="console.log('div')">
    ??<p?onclick="console.log('p')">
    ????Click?here!
    ??</p>
    </div>
    
    • A: p div

    • B: div p

    • C: p

    • D: div

    答案: A

    如果我们点击 p,我们会看到两个日志:pdiv。在事件传播期间,有三个阶段:捕获、目标和冒泡。默认情况下,事件处理程序在冒泡阶段执行(除非将 useCapture 设置为 true)。它从嵌套最深的元素向外传播。


    33. 输出是什么?
    const?person?=?{?name:?'Lydia'?}
    
    function?sayHi(age)?{
    ??console.log(`${this.name}?is?${age}`)
    }
    
    sayHi.call(person,?21)
    sayHi.bind(person,?21)
    
    • A: undefined is 21 Lydia is 21

    • B: function function

    • C: Lydia is 21 Lydia is 21

    • D: Lydia is 21 function

    答案: D

    使用这两种方法,我们都可以传递我们希望 this 关键字引用的对象。但是,.call立即执行的。

    .bind 返回函数的副本,但带有绑定上下文!它不是立即执行的。


    34. 输出是什么?
    function?sayHi()?{
    ??return?(()?=>?0)()
    }
    
    typeof?sayHi()
    
    • A: "object"

    • B: "number"

    • C: "function"

    • D: "undefined"

    答案: B

    sayHi 方法返回的是立即执行函数(IIFE)的返回值.此立即执行函数的返回值是 0, 类型是 number

    参考:只有7种内置类型:nullundefinedbooleannumberstringobject, symbolbigintfunction 不是一种类型,函数是对象,它的类型是object


    35. 下面哪些值是 falsy?
    0
    new?Number(0)
    ('')
    ('?')
    new?Boolean(false)
    undefined
    
    • A: 0, '', undefined

    • B: 0, new Number(0), '', new Boolean(false), undefined

    • C: 0, '', new Boolean(false), undefined

    • D: All of them are falsy

    答案: A

    只有 6 种 falsy 值:

    • undefined

    • null

    • NaN

    • 0

    • '' (empty string)

    • false

    Function 构造函数, 比如 new Numbernew Boolean,是 truthy。


    36. 输出是什么?
    console.log(typeof?typeof?1)
    
    • A: "number"

    • B: "string"

    • C: "object"

    • D: "undefined"

    答案: B

    typeof 1 返回 "number"typeof "number" 返回 "string"


    好了,以上就是本周的汇总,以后我们每周会汇总一次,相信你会从中找到你喜欢的内容,最后,记得点个在看,转发文章,关注一下我哦。

    有用的话,点个“在看”,支持我们

    cs
    下一篇:没有了