我有一個形式的數組數組存在價值:如何檢查是否使用javascript
"localValues" : [
{
"localValId" : "8KfbEozjdQYAefuHF",
"localProductCode" : "291105300",
"localMarkupVal" : "2.8",
"localMembersPrice" : "3344"
},
{
"localValId" : "qdCY6Kkvc7e8m4yxw",
"localProductCode" : "291105300234",
"localMarkupVal" : "2.8432",
"localMembersPrice" : "3344333"
},
{
"localValId" : "i827Eve8zBexRSTSP",
"localProductCode" : "291105300",
"localMarkupVal" : "2.8432",
"localMembersPrice" : "899"
}
我試圖返回localProductCode的位置:
var a = localValues;
var location = a.indexOf('291105300');
console.log('location: ' + location)
然而,這返回-2,這是不正確的,因爲該代碼確實存在於數組中。有人可以幫忙嗎?先謝謝你!
我想你是誤會的indexOf做什麼。 indexOf方法只適用於簡單的值。如果你只有一個localProductCode數組,那麼indexOf就可以工作。如果你想讓你的例子工作,你必須迭代每個數組的子對象,並對localProductCode屬性進行字符串比較。老實說,如果「localProductCode」是你的密鑰,你可能會更好的更改數據結構。相反,您可以將本地值鎖定。 –
'indexOf'返回很多東西,但*從不* **'-2' **! – Bergi