簡體   English   中英

在json數組中搜索字符串並獲取其值

[英]Search for a string in json array and retrieve its value

我是Json和javascript的新手,我有以下代碼,並創建了一個json數組:

<script>

function cost_change(price) {
    var removed;
    var value = <?php echo json_encode(Yii::app()->params['match_resales']);?>;
    console.log("value",value);     

}
</script>  

現在, price是一個字符串,需要在json數組中進行搜索,如果找到,則必須檢索其值。
印刷的Json數組就像這樣的Object { 100000.0="1lakh", 200000.0="2lakh", 300000.0="3lakh"}假設price =“ 100000.0”,那么我應該將var刪除= 1lakh。 這個怎么做

應該為Javascript打印的JSON如下所示:

{ 100000.0: "1lakh", 200000.0: "2lakh", 300000.0: "3lakh" }

這將按您的功能預期的那樣工作。 PHP json_encode 應該像這樣打印出來,而不是您發布的示例。 因此,PHP可能存在問題。

被檢索的JSon不是數組,而是對象。 那很重要 這意味着:

  1. 您可以使用第一個元素作為鍵來訪問每個成員(項目)。
  2. 您不能將其用作常規數組(這就是為什么將其作為對象打印出來的原因)。 例如,它沒有“長度”。

話雖如此,您可以這樣簡單地從對象中刪除成員:

    delete value[parseInt(price)];

我們來了:

  1. 使用數組表示法訪問值“對象”,並具有返回整個成員的鍵。
  2. 字符串價格轉換為數字(我假設所有字符串均以.0結尾,否則應使用parse float)。
  3. 從對象中刪除該成員。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM