清理数值数组中未定义的项目并按javascript对其进行排序

时间:2015-05-29 18:41:17

标签: javascript arrays sorting

我在for loops

中创建了一个数组

下面是一个包含未定义项目的数字数组&我不知道删除未定义项目的正确方法并对其进行精细排序,请参阅:

2426,3045,,1680,,,1323,,,,1311

排序后,这里首先合并两个项目:

24263045,1680,,1323,,,1311,,,,

这是我的代码:

var textcontent = 'larg text content larg text content larg text content larg text content larg text content larg text content';
var words = 'content larg text';
var word = words.split(' ');

for(var i=0;i<word.length;i++){
var kx=[];
kx[i] = textcontent.indexOf(word[i]);

function sortNumber(a,b) {
return a - b;
}
//trying to sort that
var vk = kx.sort(sortNumber);
document.write(vk);
// it returns something like this
// 24263045,1680,,1323,,,1311,,,, 
}

如何删除未定义的项目并将其排序为

1311,1323,1680,2426,3045

1 个答案:

答案 0 :(得分:2)

您可以使用 filter()

var arr = [2426,3045,,1680,,,1323,,,,1311];
function test(array){
    var arr = array.filter(function(item){
      return item && item!='';//Check if string item is empty.
    })
    console.log(arr);
    return arr;
}
//Call
var arr = test(arr).sort();//To sort