Javascript 将JSON对象推送到数组未添加到数组中

Javascript 将JSON对象推送到数组未添加到数组中,javascript,arrays,json,Javascript,Arrays,Json,我有一个问题,我不知道我做错了什么,下面的代码需要将和JSON对象推送到数组中,但它没有更新,它只显示最后一个推送的元素 var myData = {}; var id = 0; $("a").on('click', function(){ myData.answers = new Array(); myAns = { id : id, answer : "my answer" }; myData.answers.push(myAns); id++; console

我有一个问题,我不知道我做错了什么,下面的代码需要将和JSON对象推送到数组中,但它没有更新,它只显示最后一个推送的元素

var myData = {};
var id = 0;

$("a").on('click', function(){

  myData.answers = new Array();
  myAns = { id : id, answer : "my answer" };

  myData.answers.push(myAns);

  id++;

  console.log(myData);
});

这是一个相同的示例,请帮助移动
myData.answers=new Array()退出
单击事件处理程序。每次单击链接时都会重置阵列:

myData.answers = new Array();

$("a").on('click', function(){
    myAns = //etc

此位应位于事件处理程序之外。你每次都在重现它<代码>myData.answers=新数组()天哪,我太笨了,我已经敲了三个小时的头了,有时候谢谢你,你只需要一双额外的眼睛来发现显而易见的:-)