【问题标题】:Convert json to array in jquery在jQuery中将json转换为数组
【发布时间】:2016-01-27 06:58:03
【问题描述】:

我正在尝试将我的 json 对象转换为数组。我看到了很多关于 SO 的问题,但这对我没有帮助。

我的 PHP 代码:

$arr = Array ( [1] => 10 [5] => 20 ) //array key is random

我想把上面的数组赋值给 jQuery 变量。

jQuery 代码:

var obj = '<?php echo json_encode($arr)?>';

当我打印obj 时,它给了我{"1":"10","5":"20"}。我想要像 [1:10,5:20] 这样的数组。

然后我想通过它的键访问数组值(例如obj[1] or obj[5]

忽略我的语法错误。

谢谢。

【问题讨论】:

  • 使用json_decode()函数
  • var encodedJson = ''; var obj = $.parseJSON(encodedJson);警报(obj [1]); // 这将显示为 10
  • @Vaira :工程师先生想将 php 数组分配给 javascript 变量。 json_decode 将 json 数据转换为 php 数组。不是 php 数组到 json。
  • @VairaMuthu 它没有帮助。

标签: php jquery arrays json


【解决方案1】:

您只需要在脚本中定义var obj 而不使用'

<script>

var obj = <?php echo json_encode($arr)?>;
alert(obj[1]);// will alert 10

</script>

【讨论】:

    【解决方案2】:
     var data; //suppose data contains the json result i.e {"orders":[{"name":"Accessories"}}]
     var response_length=response.orders.length; //orders is the json array
      var array_store = [];
     for (i = 0; i < response_length; i++)
       array_store .push(response.orders[i].name); //name is json object
    

    【讨论】:

      【解决方案3】:

      简单的解决方案如下:

      var encodedJson = '<?php echo json_encode($arr)?>'; 
      var obj = $.parseJSON(encodedJson); 
      alert(obj[1]); // this will show as 10
      

      【讨论】:

        猜你喜欢
        • 2010-11-06
        • 1970-01-01
        • 2014-08-26
        • 2020-04-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多