为什么属性长度“未定义”?它被宣布为全球性的

时间:2018-06-06 16:15:50

标签: jquery

在尝试循环遍历数组Uncaught TypeError: Cannot read property 'length' of undefined时,我在控制台中收到以下消息:storede

我试图在click函数之外循环遍历数组storede,在点击函数中push()数组storede之后。

代码:

$(document).ready(function(){

  var form =  $('#newItemForm');
  var list =  $('ul');
  var storede;

  $form.on('submit', function(e) {
    e.preventDefault();
    var inp = $('input:text').val();
    $list.append('<li>' + inp + '</li>');
    $('input:text').val('');

  });

   $('ul').on('click', 'li', function(){
     storede =  [] ;
     var thisc = $(this).html();
     var updatedd = storede.push(thisc);
     $(this).remove();
   });


    for (var i = 0; i < storede.length; i++) {
    console.log(storede[i]);
    }

});

1 个答案:

答案 0 :(得分:0)

解决了:

$(document).ready(function(){

  var form =  $('#newItemForm');
  var list =  $('ul');
  var storede = [];

  form.on('submit', function(e) {
    e.preventDefault();
    var inp = $('input:text').val();
    list.append('<li>' + inp + '</li>');
    $('input:text').val('');

  });

   $('ul').on('click', 'li', function(){

     var thisc = $(this).html();
     var updatedd = storede.push(thisc);
     $(this).remove();
   });



   $('#showdeleted').on('click', function(e){
    e.stopPropagation();
    for (var i = 0; i < storede.length; i++) {
    console.log(storede[i]);
    }

  });

});