Javascript 条件语句不工作-数组

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

我有一个(新手)JS问题:

我有一个简单的函数movieStorage(),我想检查是否单击了Yes按钮-如果是,它应该将输出(RandomItem)存储在一个新数组(movieSaver)中

输出是hMovies数组中的一个随机值-单击Yes按钮时生成

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