gpt4 book ai didi

javascript - 返回 something "directly"和 not 有什么区别?

转载 作者:行者123 更新时间:2023-11-30 13:44:31 25 4
gpt4 key购买 nike

今天我发现了一些我以前不知道的事情。

function forecast(arr) {
return arr.slice(2, 4)
}

//["warm", "sunny"]

forecast(['cold', 'rainy', 'warm', 'sunny', 'cool', 'thunderstorms']));

function forecast(arr) {
arr.slice(2, 4)
return arr
}
//  ["cold", "rainy", "warm", "sunny", "cool", "thunderstorms"]

forecast(['cold', 'rainy', 'warm', 'sunny', 'cool', 'thunderstorms']));

据我目前的理解,他们应该记录同样的事情。

以上两者的根本区别是什么?

最佳答案

它们不会也不应该产生相同的结果:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/slice

return arr.slice(2, 4)

这将返回 slice 操作的结果,根据提供的链接,它是一个包含 slice 操作结果的数组。

   arr.slice(2, 4)
return arr

这只是返回最初提供的数组参数 arrslice 调用的结果未使用并被丢弃。

根据您在 arr 上调用的函数,每种情况下具体发生的情况会有所不同。作为示例/思想实验,可以重新定义 slice 以便它改变原始数组,在这种情况下,两个示例将返回相同的内容。

关于javascript - 返回 something "directly"和 not 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59568519/

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