前端溜圈群技术小题复盘-第一周

前端溜圈群技术小题复盘-第一周

每周工做日会出一道小题,一周五题,周六分享会复盘结束后本人会将问题与答案整理出来~方便群内小伙伴复习。css

这里只整理简短的解析与答案(可是我会在每周复盘中详细讲解以及扩展),具体内容不懂的话能够谷歌或者私我,固然仍是建议你们多多思考多多讨论。前端

天天第一名正确回答并解释完整的同窗能够得到群主的奖励红包数组

第一天

  • setTimeout 中调用的代码的 this 在非严格模式下会指向 window
  • 全局 let 声明的变量不在 window 上,而是在叫作 script 的全局域上

答案:undefined函数

次日

  1. 直接访问 Foo 上的 log 方法,打印 2
  2. 虽然有函数和变量提高,可是最后被赋值语句覆盖,打印 4
  3. Foo() 执行,内部声明了 全局的 foo,覆盖;返回 this (即window),调用 window 上的 log,打印 1
  4. 调用 window 上的 log,打印 1
  5. new 优先级较高,返回一个 空对象,上面绑定了 Foo 的原型链,在对象上没有找到 log 属性,去原型链上找,打印 3

答案:2 4 1 1 3ui

第三天

  • If 中的求值使用的是 eval,传入非字符串时不会对其进行执行而是直接返回,因此两个 If 都返回了这个函数且未声明,为 true
  • 由于函数未被执行,因此一个为 number,另外一个为 undefined,而后拼成字符串
  • typeof 未声明变量 为 undefined

答案:1number,1undefinedthis

ECMA标准:If statementtypeoflua

第四天

CSS

很明显使用计数器较好spa

ul {
  counter-reset: counter;
}

li::before {
  counter-increment: counter;
  content: counters(counter, '.') ' ';
}
复制代码
  • counter-reset:初始化计数器,默认从 0 开始
  • counter-increment:用于可计数的元素中并指明计数器,默认变化值为 1
  • counters(counter, string):第一个参数为计数器名称,第二个参数为计数器后字符串(子序号的连接字符串)

详细使用建议自行搜索。code

JS

  • process.nextTick 属于 idle 观察者,setImmediate 属于 check 观察者,每次循环中,idle > check
  • process.nextTick 回调函数保存在数组中,setImmediate 保存在链表中
  • process.next 每次循环执行所有的回调函数,setImmediate 只执行一个回调函数

答案:cdn

pass nextTick1 nextTick2 setImmediate1 nextTick3 setImmediate2

可是好像改了,setImmediate如今所有取出了

第五天

  • 若对象上存在属性,则直接使用
  • 若对象上不存在属性,则查找原型链上的原型
  • 原型复用

答案:

1, [1,2,1], 8 11, [1, 2, 1], 8 12, [1,2,1], 8

1, [1,2,1],8 4, [1,2,1,11,12],5 5, [1,2,1,11,12], 5

广告

天天群内会发一道技术小题,每周末会有视频技术分享和前端题复盘。

只面向前端大学生,但愿积极活跃的你进群聊生活聊技术聊Idea。

欢迎大学生前端进群交流呀 ~ 小群人数很少,进群就是朋友,之后规模也会限制在50人左右~

相关文章
相关标签/搜索