javascript数组在函数调用中丢失

时间:2013-04-26 12:54:02

标签: javascript jquery arrays function

你知道为什么下面的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

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

3 个答案:

答案 0 :(得分:7)

...括号 而不是

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

DO

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

答案 1 :(得分:4)

尝试:

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

而不是:

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

答案 2 :(得分:-1)

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

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

使用

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

应该给你预期的结果