簡體   English   中英

如何刪除 JavaScript 中的空白數組

[英]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.

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