美文网首页
js闭包问题详解

js闭包问题详解

作者: 亚讯 | 来源:发表于2019-08-27 21:12 被阅读0次

传言很多互联网公司不是停止招聘就是裁员的,相比春节后肯定有很多前端程序员需要找工作,于是就免不了面试了,本人就分享一道特别常考的笔试题,一道题就能用来面试各种阶段的前端工程师。

一段看似简单的代码

这道前端笔试题你会不?

上面这段程序的运行结果是?只要你对 JS 中同步和异步代码的区别、变量作用域、闭包等概念有正确的理解,就知道正确答案是5,5,5,5,5,5;

用->表示两次输出间有 1 秒,而逗号表示可忽略呢?

循环执行过程中,几乎同时设置了 5 个定时器,一般情况下,这些定时器都会在 1 秒之后触发,而循环完的输出是立即执行的, 所以结果是 5 -> 5,5,5,5,5;

如何让输出变成:5 -> 0,1,2,3,4?

  • 利用 IIFE(声明即执行的函数表达式)来解决闭包造成的问题:
这道前端笔试题你会不?
  • 利用函数的参数传递是按值传递的特征,:
这道前端笔试题你会不?

如何让输出变成 0-> 1-> 2->3->4->5?

  • 增加定时器
这道前端笔试题你会不?
  • 基于ES6 Promise 的解决方案
这道前端笔试题你会不?
  • 完全基于ES6
这道前端笔试题你会不?
  • 如何让代码层次更好
这道前端笔试题你会不?
  • 能否使用ES7?
这道前端笔试题你会不?
  • 还能优化吗?
这道前端笔试题你会不?

结语

一道看似简单的笔试题,其实背后可以考察的东西很多,作为一个有追求的码农,不断打牢基础,才能写得出让自己下跪的代码!

相关文章

  • js闭包问题详解

    传言很多互联网公司不是停止招聘就是裁员的,相比春节后肯定有很多前端程序员需要找工作,于是就免不了面试了,本人就分享...

  • 详解js闭包

    详解js闭包 闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实...

  • JS闭包问题(二)

    在之前的JS闭包问题(一)文章中大概介绍了一下JS闭包,同时讲了闭包与变量之间的问题,今天我们继续聊闭包,聊聊闭包...

  • js闭包 详解

    闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现。 闭包的特...

  • 详解js闭包

    闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现。 闭包的特...

  • JS 闭包详解

    闭包是可以用作函数参数和方法参数的代码块,是指有权访问另一个函数作用域中的变量的函数。因为在JS中,在另一个函数内...

  • js闭包详解

    一、闭包的相关概念 image.png 二、案例解析 分析:1、函数可以作为一个变量返回值2、bar 变量作为fo...

  • js闭包详解

    1.什么是闭包? 要了解什么是闭包,首先你要了解作用域。 js的作用域分两种,全局作用域和局部作用域。 我们知道在...

  • JS闭包入门

    最近有看到朋友的面经里提到的JS闭包的问题,就想研究研究,以下是我对JS闭包的简单理解。 到底什么是JS闭包? 定...

  • 再谈JS闭包(JS闭包系列2)

    这篇文章,来继续谈谈Javascript闭包的剩余问题。因为在上一篇文章中关于JS闭包(JS闭包系列1)主要简单的...

网友评论

      本文标题:js闭包问题详解

      本文链接:https://www.haomeiwen.com/subject/albyectx.html