重複の可能性:
Javascript の配列から空の要素を削除する
null
を使用して配列から要素を削除または空にしたいjquery
var clientName= new Array();
clientName[0] = "jack";
clientName[1] = "";
clientName[2] = "john";
clientName[2] = "peter";
いくつかの提案をしてください。
重複の可能性:
Javascript の配列から空の要素を削除する
null
を使用して配列から要素を削除または空にしたいjquery
var clientName= new Array();
clientName[0] = "jack";
clientName[1] = "";
clientName[2] = "john";
clientName[2] = "peter";
いくつかの提案をしてください。
jquery grep関数を使用すると、定義した基準に合格する配列要素が識別されます
arr = jQuery.grep(arr, function(n, i){
return (n !== "" && n != null);
});
jQuery では必要ありません。プレーンな JavaScript を使用してください (より高速です!):
var newArray = [];
for (var i = 0; i < clientname.length; i++) {
if (clientname[i] !== "" && clientname[i] !== null) {
newArray.push(clientname[i]);
}
}
console.log(newArray);
最新のブラウザ向けのもう 1 つの簡単なソリューション (Arrayfilter()
メソッドを使用):
clientname.filter(function(value) {
return value !== "" && value !== null;
});
jQueryの関数はnull/未定義ではない.map()
ものを返すことに依存しているため、次のようなもので逃げることができると考えていました:
var new_array = $.map(old_array, function (el) {
return el !== '' ? el : null;
});
空の文字列をチェックする必要はありますが、null と undefined をチェックする必要はもうないので、ロジックの複雑さが 1 つ減ります。
これを試して :
$.each(clientname, function(key, value) {
if (value === 'undefined' || value === '')
clientname.splice(key,1);
});
次のコードを使用します。
var newarr=[];
for(var i=0; i<len(clientname);i++){
if(clientname[i] !== "" && clientname[i] !== null){
newarr.push(clientname[i]);
}
}