簡體   English   中英

我想遍歷一個數組,但我不想使用 for 有人可以幫我嗎?

[英]i want to loop through an array but i dont wanna use for can somebody help me please?

function CreateSuspectObjects(name){
    return {
        name: name,
        color: name.split(' ')[1],
        speak(){
            console.log("my name is" , name);
        } 
    };
}; 

一個以名稱為值並將其作為對象返回的函數。

var suspects = ['miss scarlet','colonel mustard','mr white'];

var suspectsList = [];

var _ = {}; 

無論我是否創建此 var,我都會收到錯誤消息。 我不知道為什么。

_.each(suspects , function(name){
    let suspectObj= CreateSuspectObjects(name);
    suspectsList.push(suspectObj);
}); 

我使用了我不想使用的每個 bc

您可以為此使用Array.prototype.map 在你的情況下:

suspects.map((name) => {
    let suspectObj= CreateSuspectObjects(name);
    suspectsList.push(suspectObj);
});

如果您將來需要索引,您還可以執行以下操作:

suspects.map((name, idx) => {
    let suspectObj= CreateSuspectObjects(name);
    suspectsList.push(suspectObj);
});

你可以做Array.from

 function CreateSuspectObjects(name){ return { name: name, color: name.split(' ')[1], speak(){ console.log("my name is" , name); } }; }; var suspects = ['miss scarlet','colonel mustard','mr white']; var suspectsList = []; window.addEventListener(`load`, () => { const p = document.getElementById(`output`); suspectsList = Array.from(suspects, e => CreateSuspectObjects(e)); p.innerHTML = Array.from(suspectsList, e => JSON.stringify(e)).join(`<br />`); // Just for formatting, not needed });
 <p id="output"></p>

暫無
暫無

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

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