1

文字列を含む配列があります。文字列に何も書き込まれていない場合は、配列から削除したいと思い.splice()ます。

どういうわけか、空のエントリがすべて取得されるわけではありません。最初に空のエントリが 2 つある場合は、1 つだけ取得します。

これが私のフィドルとコードです:

stringArray = ["", "", "Banana"];

console.log('before stringArray.length: ' + stringArray.length);

for (var i = 0; i < stringArray.length; i++) {
    if (stringArray[i] === "") {
        stringArray.splice(i, 1);
        if (i > 0) i--;
    }
}

console.log('after stringArray.length: ' + stringArray.length);
4

2 に答える 2