如何将哈希值转换为数组

How to convert hash in to an array?

本文关键字:数组 转换 哈希值      更新时间:2023-09-26
$VAR1 = {
        'time_stamp' => '06/20/13 09:53',
         'data' => {
             'TOS1' => {
                 '69' => {
                   '65' => {
                       'LINK_STATUS' => 1,
                        'KPIS' => {
                            Aailability' => {
                                   'status' => 'G',
                                     'val' => '100'
                                             },
                            'Completion Time' => {
                                'status' => 'G',                          
                                  'val' => '1'
                                   }
                                      }
                                 }
                           }
                    }
           }
   };

我想把这个哈希值转换成数组。我在json中得到这个,并将它存储在javascript的一个变量中。我想用表格格式显示所有的值

所以你有一个深嵌套的对象图。要从中生成一个数组,您可能会使用for-in来循环遍历每个级别对象的属性,并使用这些值来构建一个数组。从问题上看,你可能希望这个数组看起来像什么,所以我不能进一步提供帮助。

for-in循环是这样的:

var key;
for (key in obj) {
    // Here, `key` will have each property name; to get
    // that property's value, use obj[key]
}

例如:

var obj = {
    a: 1,
    b: 2
};
var key;
for (key in obj) {
    console.log(key + "=" + obj[key]);
}

…将输出

 = 1b = 2 之前

(订单不保证)

我不认为有任何理由将其转换为数组。在Javascript中数组只能有数字键。

您可以使用for in:

迭代对象属性。
for (var property in $VAR1) {
    if ($VAR1.hasOwnProperty(property)) {
        console.log(property); // time_stamp
        console.log($VAR1[property]); // 06/20/13 09:53
    }
}

如果您有嵌套对象,则需要嵌套循环来遍历嵌套对象。