function removeString(obj) {
var propertyArray = Object.values(obj); //make array of just properties
for(var i = 0; i < propertyArray.length; i++) {
if (typeof propertyArray[i] === "string") //find string
delete Object.keys(obj)[i]; //delete the key with the same index as the string
}
return obj;//return new object without string
}
var testObject = {size: 6, name: 'String', age: 20}
console.log(removeString(testObject)) //I want {size: 6, age: 20}
上記の関数削除フィールドに値string
が必要です。返されるのは元のオブジェクトです。インデックスでjavascriptのキーと値のペアを削除する
これを読んだことのある人には、事前に感謝します。
それはに、不要なressourcesの多くを使用しています。 (各反復のためのキーの配列を得る、それは高価かもしれない)。 –
@ibrahimmahrir私は、OPが与えたコードと同じコードを使用しているだけです。なぜコードが機能しなかったのか、それを修正する方法がわかります。はい、これを行うためのより良い方法がありますが、私はこれが最初のコードで何が間違っていたかを最も明確に示すと思います。 –
ありがとうございます。私はこれが望ましい出力を達成する最良の方法ではないことを知っています。私は近くにいることは分かっていたが、何がうまくいかないのか分からなかった。私は助けに感謝します。 –