赠佳期

文章 评论 浏览 31

赠佳期 2022-05-04 13:57:52

在30-seconds-of-code看到一个这个题的变形,分享一下

let unary = fn => val => fn(val)
let parse = unary(parseInt)
console.log(['1.1', '2', '0.3'].map(parse))

这个的答案是什么呢?

我是这样理解的:

unary函数接收一个回调函数 fn ,返回一个闭包。

也就是说 parse函数等同于 let parse = val => parseInt(val)

传入 parse 函数的参数依次是(箭头函数没有 arguments所以超过形参的实参会被忽略):

1. `parse('1.1')` 返回 `1`

2. `parse('2')` 返回 `2`

3. `parse('0.3')` 返回 `0`

输出 [1, 2, 0]

谢谢回答~

第 2 题:['1', '2', '3'].map(parseInt) what & why ?

赠佳期 2022-05-04 13:20:53

哈哈,这道题难住我了,对这个方面并没有研究,抱歉也提供不了什么资料,不过我会把这个课题记下来,如果想明白了或者有所进展,立刻跟题主讨论哈~

JavaScript 深入之继承的多种方式和优缺点

更多

推荐作者

櫻之舞

文章 0 评论 0

弥枳

文章 0 评论 0

m2429

文章 0 评论 0

野却迷人

文章 0 评论 0

我怀念的。

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文