JSの操作。私はオブジェクトの配列を持っています。以下にサンプルを示します。すべての値が文字列であることがわかります。しかし、lft
とrgt
の値を整数に変換して、これらの値を別の配列に保持されている他の値と比較できるようにする必要があります。それらを文字列にして比較すると誤った結果になります。オブジェクトの配列を解析し、文字列番号を整数に変換する方法
nodesWithchildren
:Array[1]
0:Object
category_id:"8"
created_at:"2016-11-04 14:14:28"
lft:"17"
name:"Felt Materials"
rgt:"22"
updated_at:"-0001-11-30 0:00:00"
__proto__:Object
私はStackoverflowで検索し、さまざまな提案を見つけました。それらのすべては、偉大なparseIntを持つforループを使用しますが、値がすべて文字列番号であり、値が単純な配列に保持されていると仮定します。オブジェクトの配列ではありません。
これを使ってみましたが、これはうまくいきません。おそらくparseintはそれを好まないからでしょう。実際にページがクラッシュする:
var nodesWithchildrenParsed =[];
for(var i=0; nodesWithchildren.length;i++){
nodesWithchildrenParsed[i] = parseInt(nodesWithchildren[i]);}
私の最初のステップはこれらの値を変換しています。 lft
とrgt
が整数に変換されたら、私は "lftがXより大きく、rgtがYより小さくて、それから私に名前" feel felt materials "を与える別の関数を実行します。
Tks !