我在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
答案 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