一道常见的Js面试题

时间: 2019-06-08阅读: 36标签: 面试

面试题题目

页面上有一个输入框,两个按钮,A按钮和B按钮,点击A或者B分别会发送一个异步请求,请求完成后,结果会显示在输入框中。

题目要求,用户随机点击A和B多次,要求输入框显示结果时,按照用户点击的顺序显示,举例:

用户点击了一次A,然后点击一次B,又点击一次A,输入框显示结果的顺序为先显示A异步请求结果,再次显示B的请求结果,最后再次显示A的请求结果。


思考

当时被问到的时候,几个想法

  1. 写个高阶函数,处理异步请求
  2. 怎么保证顺序,我是想将其放入数组中,然后按顺序执行

代码:

/**
 * A的请求;pA(promise对象)
 * B的请求;pA(promise对象)
 * @click 事件函数 handler
 */
let arr = []
let it
function* main() {
    //进来的是pA,pB封装后的方法
    const data = yield arr.unshift()()
    if(arr.length > 0) {
        it = main()
        it.next()
    }
}
it = main()
//封装pA,pB的请求
function pn(promise) {
    return promise.then(res => it.next(res))
}
//当点击按钮发送请求时,将相应的请求加入数组中
function handler(pn) {
    arr.push(pn)
    //数组不为空说明请求触发中
    if(arr.length = 0) {
        it.next()
    }
}


说明

  1. 点击按钮时,先发放入请求;数组为空说明,还没执行;就先执行;不为空,则加入数组中,等待执行
  2. 利用迭代器,遍历数组,执行请求
  3. 封装函数fn,思路来自之前看的Generator的异步请求方式



面试中,如何证明自己是资深程序员?

真正的程序员为人处事方面相对比较低调,特别面试过程中不需要专门为了炫耀技术只是把面试官问的问题按部就班的回答上来就可以了,一般技术面试来讲技术面试官都会根据简历上情况做个大致的摸底,技术面试基本上通过面试就能了解个大概

程序员如何拿下编程面试?

多年以来,我在好几家公司工作过,所以我的面试技巧得到了很好的磨炼,而且我参与面试的过程也教会了我该说什么、该做哪些准备,以及如何面试。在这篇指南里,你会了解到面试的概况、面试取得成功的六大步骤,以及我在考察数据结构和算法时所考虑的方面

Web前端面试之什么是闭包?

在我面试时问出的一系列问题里,闭包通常是我问的第一个或最后一个问题。坦白地说,如果你连闭包也弄不明白,你是不会在 JavaScript 的道路上走多远的。为了快速理解下面的内容:你想一下能否举出两个闭包的通用场景?

写给程序员的 HR 面试指南

首先,切记不要诋毁你的老东家。你应该把你的离职原因集中表述在“寻找新机会或新的平台”以及尝试在新的岗位上提升自己。当然,这样的回答对于一般职位的应聘者来说不会造成减分

面试题之“a==1 && a==2 && a==3 为true”解析

这是在国外的一道面试题看到的,大家先自己想一下,在什么情况下这个判断会成立?按正常思维想,这个是不可能成立的,但nothing is impossible,首先贴上正确答案代码

24 个必须掌握的数据库面试问题!

如果我们定义了主键(PRIMARY KEY),那么InnoDB会选择主键作为聚集索引。如果没有显式定义主键,则InnoDB会选择第一个不包含有NULL值的唯一索引作为主键索引。

一位程序员妹纸讲述她是如何拿到美团offer的?

美团,我是在拉勾网上投的简历,之前也投过一次,简历都没通过删选,后来让学姐帮我改了一下简历,重新投另一个部门,获得了面试机会。

一道面试题引发的思考

说到这里,简单地说一下面向对象,至于什么是面向对象我这里就不多说了,每个人也都有自己不同的理解,包括它的三要素(封装、继承、多态)。

程序员面试的时候,大家都中过什么套路?

利用面试人员解决难题,之前有网友爆料自己在面试一家创业公司的时候,最开始只是一位面试官在场,面着面着整个开发组的人都过来了,围绕面试者擅长的数据库开发,提出了非常具体的问题。

面试web前端开发需要注意哪些?

针对面试时注意的一些关键的点。面试流程大概流程是:注:可能有些公司的流程不一样,但是都逃不过这几个过程。在简历制作方面需要说一下,一般培训机构都会让学员写上2-5年工作经验

fly63.com版权所有,内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权,请与小编联系!情况属实本人将予以删除!

广告赞助文章投稿关于web前端网站点搜索站长推荐网站地图站长QQ:522607023

小程序专栏: 土味情话心理测试脑筋急转弯幽默笑话段子句子语录成语大全