簡體   English   中英

單擊按鈕后如何將數據從數組插入數組

[英]How to insert data to array from array after click button

單擊按鈕后,我需要將數組聯系人的數據一一插入到數組數據中。 單擊按鈕后插入觸點[0],然后單擊另一次單擊不插入觸點[0]的觸點[1],然后單擊下一步[2]。

<button id="submit-btn" onclick="myFunc()">Search</button>

  const contacts = ['Chriss:23232','Sarah:345232','Bill:893246','Mary:254366',
                    'Dianne:2434356','Amy:2356546','Andreu:23546457'];


    var data = [];
    function myFunc(){
            //var res = contacts.filter(f => !data.includes(f));

        for ( let x = 0; x < contacts.length; x++ ){
            data.push(contacts[x]);
        }
    }

這將節省整個聯系人。

使用shift並確保點擊次數不會超出數組的長度。 如果不添加檢查,超過數組長度后,它將繼續添加undefined

您可以將全局變量用作索引跟蹤器,並在每次單擊按鈕並在數據數組中推送值時保持更新。 但是在JS世界中,通常將其視為使用全局變量的反模式。

 const contacts = ['Chriss:23232','Sarah:345232','Bill:893246','Mary:254366','Dianne:2434356','Amy:2356546','Andreu:23546457']; var data = []; function myFunc(){ if(contacts &&contacts.length > 0) { data.push(contacts.shift()); console.log(data) } else { console.log('No more contacts in your list') } } 
 <button id="submit-btn" onclick="myFunc()">Search</button> 

只需使用全局計數器值,然后在您的函數中將其遞增並推入數組即可:

 const contacts = ['Chriss:23232','Sarah:345232','Bill:893246','Mary:254366','Dianne:2434356','Amy:2356546','Andreu:23546457']; var counter = 0; var data = []; function myFunc() { if (!(counter++ > contacts.length)) { data.push(contacts[counter]); counter++; console.log(data); } else { alert("No more contacts left!"); } } 
 <button id="search-btn" onclick="myFunc()">Search</button> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM