亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

js點擊事件里面有個循環我可以點擊一次執行一次循環嗎

js點擊事件里面有個循環我可以點擊一次執行一次循環嗎

胡子哥哥 2019-03-21 22:19:17
let arr = [                {id:1,text:"生活不只眼前的茍且"},                {id:2,text:"還有詩"},                {id:3,text:"和遠方"}                ];let items = [];$("#add").click(function(){for(var i = 0;i<arr.length;i++){    items.push(arr[i]);  }  })//這樣寫會直接把arr所有的數據全部加進去,希望是點擊一次 添加arr中的一個id
查看完整描述

3 回答

?
肥皂起泡泡

TA貢獻1829條經驗 獲得超6個贊

  // 這里定義一個全局的index標識上次添加的id的位置

  let index = 0;

  let arr = [

    {id:1,text:"生活不只眼前的茍且"},

    {id:2,text:"還有詩"},

    {id:3,text:"和遠方"}

  ];

  let arrLength = arr.length;

  let items = [];

  document.getElementById("add").onclick = function(){

    // 防止數組下標溢出

    if (index <= arrLength - 1) {

      items.push(arr[index]);

      // 添加完成之后下標后移

      index++;

    }

    console.log(items);

  }


查看完整回答
反對 回復 2019-04-14
?
當年話下

TA貢獻1890條經驗 獲得超9個贊

可以先確定這個id,然后做一個比較

var id = ''


$("#add").click(function(){

    for(var i = 0;i<arr.length;i++){

        if (id === arr[i].id) {

            items.push(arr[i]); 

        }

    }  

})


查看完整回答
反對 回復 2019-04-14
?
慕婉清6462132

TA貢獻1804條經驗 獲得超2個贊

閉包+立即執行函數實現:


$('#add').click(

    (function() {

        let count = 0;

        return function() {

            items.push(arr[count++]);

        };

    })()

);


查看完整回答
反對 回復 2019-04-14
  • 3 回答
  • 0 關注
  • 638 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號