前端面试题 一行代码实现sleep函数

作者: 程序员少北晨分类: 野生技能协会 发布时间: 2023-05-08 18:00:00 浏览:2654 次

前端面试题 一行代码实现sleep函数

踏入你的星河:
我有更简化的写法,主要是经常写些测试代码要用到sleep。 const sleep = (timestamp: number) => new Promise<void>(resolve => setTimeout(resolve, timestamp)); 用箭头函数,还有隐藏不必要的参数都能做到,甚至你可以用函数式编程的思想去理解,每个函数都是一个单独的行为概念。

我取不来名字的:
这代码可以用来模拟异步调用的耗时吧,不会阻塞同步代码的吧

赫雅埃达:
这是异步函数,只不过是通过setTimeOut来延迟Promise实例.then里回调函数的执行时间,若有别的同步函数,依旧不会阻塞同步代码的执行,况且视频里还没写异步回调。

【回复】简单来说就是阻塞不了同步代码,但写在回调里的异步就可以。
小麦_加柯樂:
遇到这种面试题,就偏偏写好几行,这种一行的面试题在js里真无聊,人家Python能一行是因为确实存在一些神奇的语法支持的,考的是语法熟练度,js根本没有什么特殊语法能完美支持一行代码的

Human_purge:
function sleep(delay: number) { return new Promise((resolve) => setTimeout(resolve, delay)); } 这样就行了,使用的时候,直接await sleep(200)就行了,这样就会阻塞同步代码的了

原理 程序员 教程 前端 JavaScript Vue Web前端 是老师,也是UP主! 万物研究所·第九期 1分钟学个知识点

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!