gpt4 book ai didi

javascript - 为什么在lodash中使用 `+start`而不是 `start`

转载 作者:行者123 更新时间:2023-12-02 16:14:27 28 4
gpt4 key购买 nike

https://github.com/lodash/lodash/blob/3.7.0/lodash.src.js#L2781

此代码段 start = start == null 中的 +start 是什么意思? 0 : (+开始 || 0);?

在我看来,+start 等于0+start。我们已经知道 start 是一个数字。

那么为什么不使用 start = start == null 呢? 0 : (开始 || 0);?

我是不是有什么误解?我真的很困惑。

最佳答案

您不知道,在该方法的开头,start 是一个数字。文档说它应该是,但是文档什么时候总是完全正确的?

+start0+start 之间没有任何真正的区别,因为两者都会将 start 强制转换为数字(因此-start,但它显然会反转过程中的符号)。

假设文档是正确的并且 start 已经是一个数字,则 +start 是一个空操作,不会导致任何问题或破坏任何内容。如果 start 不是数字(下一个最可能的类型可能是字符串),那么这将在使用它之前将其强制转换为数字。

关于javascript - 为什么在lodash中使用 `+start`而不是 `start`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29828787/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com