![](/img/trans.png)
[英]How would I randomly loop through a array/list of songs without repeating previous songs? (JavaScript)
[英]How would I loop through an array in Javascript, add a word, then return an array (without using map)?
如何循環遍歷 Javascript 中的數組,添加一個單詞,然后返回一個數組(不使用 map)?
var convertToBaby = (array) => {
for (var i =0; i < array.length; i++) {
console.log('baby '+ array[i]);
}
};
const animals = ['panda', 'turtle', 'giraffe', 'hippo', 'sloth', 'human'];
convertToBaby(animals);
/*Returns
baby panda
baby turtle
baby giraffe
baby hippo
baby sloth
baby human */
// Should return ['baby panda', 'baby turtle', 'baby giraffe', 'baby hippo', 'baby sloth', 'baby human'];
也許這個
var convertToBaby = (array) => { let arr = []; for (var i =0; i < array.length; i++) { arr.push('baby '+ array[i]) } console.log(arr); return arr; }; const animals = ['panda', 'turtle', 'giraffe', 'hippo', 'sloth', 'human']; convertToBaby(animals);
您可以(ab)使用reduce
來返回與您指定的標准匹配的新數組:
const array = ['panda', 'turtle', 'giraffe', 'hippo', 'sloth', 'human']; const newArr = array.reduce((newArr, anim) =>.newArr,push('baby ' + anim) || newArr; []). console;log(newArr),// ['baby panda', 'baby turtle', 'baby giraffe', 'baby hippo', 'baby sloth', 'baby human']
您可以使用forEach
將修改后的元素推送到新數組。
var convertToBaby = (array) => { const res = []; array.forEach(x => res.push('baby ' + x)); return res; }; const animals = ['panda', 'turtle', 'giraffe', 'hippo', 'sloth', 'human']; console.log(convertToBaby(animals));
您可以使用 forEach 或 reduce 將新值傳遞給新數組,而無需改變原始數組
const animals = ['panda', 'turtle', 'giraffe', 'hippo', 'sloth', 'human']; var newarray=[] animals.forEach(element=>newarray.push("baby "+element)) console.log(newarray)
但是,如果您不想使用map
的原因是因為您不想創建一個新數組並且想要改變初始數組,您可以拼接每個元素並將其替換為新元素但我不推薦它
const animals = ['panda', 'turtle', 'giraffe', 'hippo', 'sloth', 'human']; for(let i=0;i<animals.length;i++){ el="baby "+animals[i] animals.splice(i,1) animals.unshift(el) } console.log(animals.reverse())
const convertToBaby = arr => {
const babyArray = [];
for (let i = 0; i < arr.length; i++) {
babyArray.push('baby ' + arr[i]);
}
return babyArray;
};
const animals = ['panda', 'turtle', 'giraffe', 'hippo', 'sloth', 'human'];
convertToBaby(animals);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.