gpt4 book ai didi

javascript - 它来自 freecodecamp,我需要帮助来弄清楚 push() 与 concat()

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

返回排序后应将值(第二个参数)插入数组(第一个参数)的最低索引。返回值应该是一个数字。

例如,getIndexToIns([1,2,3,4], 1.5) 应该返回 1,因为它大于 1(索引 0)但小于 2(索引 1)。

同样,getIndexToIns([20,3,5], 19) 应该返回 2,因为一旦数组排序后它看起来像 [3,5,20] 并且 19 小于 20(索引 2)和更大大于 5(索引 1)。

//This is my code with ".push()" but complier says it is not a function.

function getIndexToIns(arr, num) {
return arr.push(num).sort((a,b)=>a-b).indexOf(num)
}

console.log(getIndexToIns([40, 60], 50));


// This is from solution with ".concat".

function getIndexToIns(arr, num) {
return arr.concat(num).sort((a,b)=>a-b).indexOf(num)
}

console.log(getIndexToIns([40, 60], 50));

为什么 push() 不起作用而 concat() 起作用?

提前致谢!

最佳答案

concat是一个数组方法,它接受一些要连接的元素,返回包含当前元素和附加元素的一个新数组。它也不会改变。

push是一个数组方法,它通过在末尾添加一个新元素来更新当前数组的内容。但它只是返回更新数组的长度

因此

arr.push(num)

返回更新后的数组的长度,不能对其调用sort

关于javascript - 它来自 freecodecamp,我需要帮助来弄清楚 push() 与 concat(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53965889/

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