Javascript数组在函数调用中丢失

javascript array lost in function call

本文关键字:函数调用 数组 Javascript      更新时间:2023-09-26

你知道为什么下面的console.log显示了我存储在数组videoList(本身是文件位置数组)中的值吗

$(window).load(function(){
    videoChoice = videoList[7];
    console.log(videoChoice); // output: value I have stored in the array (another array)
    setUpVideo($("#video-player", videoChoice));
})

而被调用函数内部的console.log显示未定义:

function setUpVideo(element, vid){
    console.log (typeof(vid)); // output: undefined
}

非常感谢任何帮助。如果您需要更多代码,请直接询问。我想我的问题最好简短明了,但从我在这里的经验来看,我似乎不太擅长提问。

谢谢你,Niall

编辑:我在这里看了一下类似的问题,但没有看到任何明确的答案(我承认可能更多地与我的理解能力有关)

括号…而不是

setUpVideo($("#video-player", videoChoice));

setUpVideo($("#video-player"), videoChoice);

尝试:

setUpVideo($("#video-player"), videoChoice);

代替:

setUpVideo($("#video-player", videoChoice));

行错误

setUpVideo($("#video-player", videoChoice));

$()符号内,jquery将其视为选择器。

使用

$("#video-player"), videoChoice);

应该给你预期的结果