配列から 3 つおきの要素を削除するにはどうすればよいですか?
var TheArray = ['h', 'e', 'z', 'l', 'l', 'l', 'o']
新しい配列を作成せずにこれを「こんにちは」と言うにはどうすればよいですか?
配列から 3 つおきの要素を削除するにはどうすればよいですか?
var TheArray = ['h', 'e', 'z', 'l', 'l', 'l', 'o']
新しい配列を作成せずにこれを「こんにちは」と言うにはどうすればよいですか?
これを試して:
for (var i = 2; i <= TheArray.length; i += 2)
TheArray.splice(i, 1);
最後に文字列が必要な場合は、TheArray.join("")
.
これを行う別の方法は、Array.prototype.filter()関数を使用することです。これを使用して3番目の要素をすべて削除する方法は次のとおりです。
var TheArray = ['h', 'e', 'z', 'l', 'l', 'l', 'o']
TheArray = TheArray.filter(function(d, i){ return (i+1)%3 !== 0; })
それが役に立てば幸い。
これを試してください:
var arr = ['h', 'e', 'z', 'l', 'l', 'l', 'o'];
for(var i = 2; i < arr.length; i+=2)
arr.splice(i, 1);
console.log(arr); // outputs ['h','e','l','l','o']
文字列が必要な場合は、配列を変更しないでください。
var r = '';
for (var i=0; i<TheArray.length; i++) {
if (i%3!=2) r += TheArray[i];
}
// now r is "hello"