在 运行 之后获取不 return undefined 的代码
Get code to not return undefined after running
我创建了一个将数字插入整数数组的函数。我假设数组总是排序 already.I 希望它 return 可以插入数字的最低索引。我已经完成了,但是在它 return 之后,当我 运行 它在 repl.it 上时,它也 return 未定义。想知道为什么会这样吗?
function lowestIndexInsert(num,arr){
for (i = 0; i<arr.length; i++){
if (arr[i]>num){
arr[i]=num;
}
}
return arr.indexOf(num);
}
console.log(lowestIndexInsert(32,[8,9,15,30,35]));
"undefined" 消息来自 console.log。例如 console.log('test') 也将显示未定义。
尝试不 console.log 就完成了
function lowestIndexInsert(num,arr){
for (i = 0; i<arr.length; i++){
if (arr[i]>num){
arr[i]=num;
}
}
return arr.indexOf(num);
}
lowestIndexInsert(32,[8,9,15,30,35])
如果 console.log()
语句是您的源代码的一部分,您将得到您想要的结果。但是,如果您实际上是从控制台执行 console.log()
,您将获得额外的 undefined
,因为在 console
中,您不必请求 console.log()
,它本身没有 return 值 (undefined
)。在这种情况下,您只需调用您的函数并让它的 return
值被 returned.
简单的解决方案
let arr = [1,2,32,35,56,68]
let num = 30
function lowestIndexInsert(num,arr){
for(let i of arr){
if(arr[i]>num)
return i
}
}
console.log(lowestIndexInsert(num,arr))
我创建了一个将数字插入整数数组的函数。我假设数组总是排序 already.I 希望它 return 可以插入数字的最低索引。我已经完成了,但是在它 return 之后,当我 运行 它在 repl.it 上时,它也 return 未定义。想知道为什么会这样吗?
function lowestIndexInsert(num,arr){
for (i = 0; i<arr.length; i++){
if (arr[i]>num){
arr[i]=num;
}
}
return arr.indexOf(num);
}
console.log(lowestIndexInsert(32,[8,9,15,30,35]));
"undefined" 消息来自 console.log。例如 console.log('test') 也将显示未定义。 尝试不 console.log 就完成了
function lowestIndexInsert(num,arr){
for (i = 0; i<arr.length; i++){
if (arr[i]>num){
arr[i]=num;
}
}
return arr.indexOf(num);
}
lowestIndexInsert(32,[8,9,15,30,35])
如果 console.log()
语句是您的源代码的一部分,您将得到您想要的结果。但是,如果您实际上是从控制台执行 console.log()
,您将获得额外的 undefined
,因为在 console
中,您不必请求 console.log()
,它本身没有 return 值 (undefined
)。在这种情况下,您只需调用您的函数并让它的 return
值被 returned.
简单的解决方案
let arr = [1,2,32,35,56,68]
let num = 30
function lowestIndexInsert(num,arr){
for(let i of arr){
if(arr[i]>num)
return i
}
}
console.log(lowestIndexInsert(num,arr))