URLから取得したデータを配列の作物に追加します。この後、私は新しい配列の助けを借りて重複作物を確認していますcropsSoFar。配列内の文字列を検索する最良の方法
var crops=[];
for(int i=0; i<results.length;i++)
{
var terrains= results.features[i].attributes.Terrain_Id;
var rawDataOfTerrain=getjsondata("http://or.org");
var trsetdata= jQuery.parseJSON(tersetjson).d.results;
crops.push(trsetdata);
}
var cropsSoFar= [];
for(int i=0; i<crops.length;i++)
{
var crop= crops[i];
if(crop in cropsSoFar)
{
crops.pop(crop);
}
cropsSoFar.push(crops[i]);
}
if(crops.length!=1)
alert("Please select terrains with the same crop");
これは配列に文字列を検索するための正しい方法ですか?もしそうなら、より簡単な方法がありますか?そうでない場合は、どこが間違っていますか?
trsetdataが文字列内にある場合、それは1つの要素のみをチェックします。 var cropsFoar = [];の空の配列をチェックインしています。 – Ray
いいえ、 'in'演算子は確かに間違った方法です。 – Bergi
あなたは配列 '.pop()'の使い方を誤解しています。それは引数をとらず、常に配列の最後の項目を削除します。 'corpsSoFar.push()'をif文に移動して* not *に変更すれば十分ですが、最初の配列にプッシュして2番目の部分をスキップする前にチェックする方が良いでしょう。 –