2015-05-29 30 views
0

排序呢,我有内部for loops清洁不确定的项目,由JavaScript

下面

创建数组是数字数组包含未定义的项目&我不知道,除去不确定的项目和精细梳理正确的方式,见:

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

你为什么要在循环内进行排序? – thefourtheye

+0

我想很多没有循环,但我有大循环里面的代码,不能找到解决方法 –

回答

2

您可以使用滤波器()的。

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 
+0

它返回'undefinedundefinedundefinedundefinedundefined'与我! –

+1

@EgySuccess检查[小提琴](http://jsfiddle.net/x85mx3a0/3/) – Zee

+0

是的大的感谢它的权利和工作,但不是与我的前..是因为循环? –