Javascript 条件语句不工作-数组
我有一个(新手)JS问题: 我有一个简单的函数movieStorage(),我想检查是否单击了Yes按钮-如果是,它应该将输出(RandomItem)存储在一个新数组(movieSaver)中 输出是hMovies数组中的一个随机值-单击Yes按钮时生成Javascript 条件语句不工作-数组,javascript,Javascript,我有一个(新手)JS问题: 我有一个简单的函数movieStorage(),我想检查是否单击了Yes按钮-如果是,它应该将输出(RandomItem)存储在一个新数组(movieSaver)中 输出是hMovies数组中的一个随机值-单击Yes按钮时生成 var hMovies=[ “HMOVE1”, “移动18” ]; var movieSaver=[]; var randomItem=hMovies[Math.floor(Math.random()*hMovies.length)]; do
var hMovies=[
“HMOVE1”,
“移动18”
];
var movieSaver=[];
var randomItem=hMovies[Math.floor(Math.random()*hMovies.length)];
document.getElementById(“按钮”).addEventListener(“单击”,如果单击是);
函数ifClickedYes(){
document.getElementById(“showResult”).innerHTML=randomItem;
返回(真);
}
函数movieStorage(){
如果(如果单击是()){
movieSaver.push(随机项);
}
}
console.log(movieSaver);
是
没有必要检查始终为true的条件。您不需要第二个函数。您只需要将元素推送到附加到onclick
事件的函数中的数组
此外,每次单击时使用生成新的随机索引
var hMovies = [
"hMovie1",
"hMovie18"];
var movieSaver = [];
document.getElementById("buttonYes").addEventListener("click", ifClickedYes);
function ifClickedYes(){
var randomItem = hMovies[Math.floor(Math.random()*hMovies.length)];
movieSaver.push(randomItem)
document.getElementById("showResult").innerHTML = randomItem;
console.log(movieSaver);
}
工作代码段:
var hMovies=[
“HMOVE1”,
“hMovie18”];
var movieSaver=[];
document.getElementById(“按钮”).addEventListener(“单击”,如果单击是);
函数ifClickedYes(){
var randomItem=hMovies[Math.floor(Math.random()*hMovies.length)];
movieSaver.push(随机项)
document.getElementById(“showResult”).innerHTML=randomItem;
console.log(movieSaver);
}
是
那么问题出在哪里呢?如果单击“是”,您的将设置#showResult
的内部HTML,并返回true
,不带任何条件。“返回true”不带括号,movieStorage()从何处调用?何时调用movieStorage()
?@VictorPopescu-虽然它看起来不正确,但返回(true)没有问题;
非常感谢!这正是我所需要的。它现在可以工作了:D