javascript - 将字符串转换为 JSON

标签 javascript json serialization redis

我是 javascript 的新手,我正在尝试将 redis-cli INFO 命令输出转换为 JSON。我试图转换为 JSON 的字符串是这样的

    "redis_version:2.4.8\r\nredis_git_sha1:b85ba5fb\r\nredis_git_dirty:0\r\narch_bits:64\r\nmultiplexing_api:kqueue\r\ngcc_version:4.2.1\r\nprocess_id:6403\r\nuptime_in_seconds:963411\r\nuptime_in_days:11\r\nlru_clock:815387\r\nused_cpu_sys:67.32\r\nused_cpu_user:91.89\r\nused_cpu_sys_children:42.23\r\nused_cpu_user_children:132.57\r\nconnected_clients:2\r\nconnected_slaves:1\r\nclient_longest_output_list:0\r\nclient_biggest_input_buf:0\r\nblocked_clients:0\r\nused_memory:162549360\r\nused_memory_human:155.02M\r\nused_memory_rss:147972096\r\nused_memory_peak:191943360\r\nused_memory_peak_human:183.05M\r\nmem_fragmentation_ratio:0.91\r\nmem_allocator:libc\r\nloading:0\r\naof_enabled:1\r\nchanges_since_last_save:1\r\nbgsave_in_progress:1\r\nlast_save_time:1350325258\r\nbgrewriteaof_in_progress:0\r\ntotal_connections_received:187\r\ntotal_commands_processed:269264\r\nexpired_keys:180\r\nevicted_keys:0\r\nkeyspace_hits:202518\r\nkeyspace_misses:11675\r\npubsub_channels:0\r\npubsub_patterns:0\r\nlatest_fork_usec:2198\r\nvm_enabled:0\r\nrole:master\r\naof_current_size:159904546\r\naof_base_size:158667118\r\naof_pending_rewrite:0\r\naof_buffer_length:0\r\naof_pending_bio_fsync:0\r\nslave0:127.0.0.1,62716,online\r\ndb0:keys=356937,expires=0\r\n"

非常感谢任何关于如何将其转换为 JSON 对象的指示。谢谢!

最佳答案

你可以像这样简单地做一些事情:

​var fields = str.split('\r\n'), result = {};
for(var i = 0, len = fields.length; i < len; ++i) {
    var props = fields[i].split(':');
    if(props.length === 2) {           
        result[props[0]] = props[1];
    }
}

console.log(result);​​​​
console.log(JSON.stringify(result));

我在 http://jsfiddle.net/uHtT3/1/ 创建了一个 jsfiddle .

关于javascript - 将字符串转换为 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12907909/

相关文章:

javascript - each() on select 不迭代

Python-网页抓取 : TypeError: string indices must be integers

javascript - 在 eBay api 中显示价格

php - 如何序列化/反序列化 SimpleXML 对象?

javascript - 力模拟中气泡中的文本重叠

javascript - 使用 MediaStream Recording API 进行最低延迟音频播放/监控的一组好的约束是什么?

javascript - 按钮传递 Onclick 事件

php - 去除 json 对象的空值

php - jquery 序列化和 $.post 并在服务器端接收不完整的数组

c++ - 如何将 C++ 对象保存到 xml 文件中并恢复?