[英]How can i remove blank array in JavaScript
我是 Javascript 的新手。
初始數據:
["Argentina", "Maroon 5:50<br>"]
["Australia", "Maroon 5:224<br>"]
["Austria", "Maroon 5:42<br>"]
["Belgium", "Maroon 5:10<br>"]
[""]
["Brazil", "Maroon 5:187<br>"]
[""]
["Canada", "Maroon 5:160<br>"]
[""]
["China", "Maroon 5:10<br>"]
[""]
[""]
[""]
[""]
[""]
[""]
[""]
[""]
["France", "Maroon 5:1533<br>"]
我的代碼:
$.each(resp.result.artists_detail, function(index, item) {
var arr = [];
var pop_val = [];
var artistdetails="";
for (var i = 0; i < resp.result.artists.length; i++) {
arr.push(item[0].country_name);
if(item[i].play_count != 0){
artistdetails +=item[i].artist_name +':'+ item[i].play_count+'<br>';
}else{
arr.pop(artistdetails);
}
}
arr.push(artistdetails);
arrOfChart.push(arr);
});
我需要這個結果:
["Argentina", "Maroon 5:50<br>"]
["Australia", "Maroon 5:224<br>"]
["Austria", "Maroon 5:42<br>"]
["Belgium", "Maroon 5:10<br>"]
["Brazil", "Maroon 5:187<br>"]
["Canada", "Maroon 5:160<br>"]
["China", "Maroon 5:10<br>"]
["France", "Maroon 5:1533<br>"]
如何刪除空白 arrays? 我正在嘗試為數組推送添加數組並為數組彈出刪除數組,但我需要一個沒有空白數組的數組。
要從數組中刪除空值,您需要使用filter
function:
var array = [0, 1, null, 2, "", 3, undefined, 3,,,,,, 4,, 4,, 5,, 6,,,,];
var filtered = array.filter(function (el) {
return el != "";
});
console.log(filtered);
最后只做:
arrOfChart = arrOfChart.filter(arr=>!(arr.length == 1 && arr[0] == ""))
console.log(arrOfChart)
>>>[
["Argentina", "Maroon 5:50<br>"],
["Australia", "Maroon 5:224<br>"],
["Austria", "Maroon 5:42<br>"],
["Belgium", "Maroon 5:10<br>"],
["Brazil", "Maroon 5:187<br>"],
["Canada", "Maroon 5:160<br>"],
["China", "Maroon 5:10<br>"],
["France", "Maroon 5:1533<br>"]
]
您只需使用filter
let data = [["Argentina", "Maroon 5:50<br>"], ["Australia", "Maroon 5:224<br>"], ["Austria", "Maroon 5:42<br>"], ["Belgium", "Maroon 5:10<br>"], [""], ["Brazil", "Maroon 5:187<br>"], [""], ["Canada", "Maroon 5:160<br>"], [""], ["China", "Maroon 5:10<br>"], [""], [""], [""], [""], [""], [""], [""], [""], ["France", "Maroon 5:1533<br>"]] let result = data.filter(([el]) => el); console.log(result);
通過使用.filter
和隱式強制( ""
到false
),您可以實現
baseArray.filter( subArray => subArray[0]);
const baseArray = [["Argentina", "Maroon 5:50<br>"], ["Australia", "Maroon 5:224<br>"], ["Austria", "Maroon 5:42<br>"], ["Belgium", "Maroon 5:10<br>"], [""], ["Brazil", "Maroon 5:187<br>"], [""], ["Canada", "Maroon 5:160<br>"], [""], ["China", "Maroon 5:10<br>"], [""], [""], [""], [""], [""], [""], [""], [""], ["France", "Maroon 5:1533<br>"] ]; const result = baseArray.filter( subArray => subArray[0]); console.log(result);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.