chr*_*ris 2 javascript arrays jquery json
我在概念或现实中都知道,即使它们基本上是同一个.但是我知道使用JSON对象(截至撰写本文时至少).改变给定对象集合中的数据并不是最容易的事情.当然我可能是错的,可能有一个简单的方法来完成所有JSON.这引出了我的实际问题.
我几乎完全使用JSON格式的对象.我需要经常更新大部分存储空间供以后使用.就个人而言,我希望每次都避免向服务器发送数据以及从服务器发送数据以重建JSON对象集.所以我想我是否想知道是否有类似于PHP的json_encode,json_decode?无论是本地JavaScript还是jQuery Lib.如果没有,我怎么能实现这样的事情因为我觉得(目前再次)使用数组和JSON对象更容易(如果我错了,请纠正我).
这个问题出现在你脑海中的原因是因为你既不了解Javascript也不理解JSON.
Javascript数组始终是数值数组.JavaScript中没有关联数组,就像你在PHP中使用的那样json_decode(json, true);.当人们在JavaScript中讨论关联数组时,他们实际上是使用JavaScript对象及其属性,即
var my_so_called_array = {};
my_so_called_array['first_item'] = 'hello world';
alert(my_so_called_array['first_item']); // 'hello world'
alert(my_so_called_array.first_item); // also 'hello world'
Run Code Online (Sandbox Code Playgroud)
关于JSON的最好之处是语法是对象文字符号的子集.这意味着JSON字符串本身是用于在Javascript中表示"关联数组"的有效代码."转换"不可能更简单,只是eval()代码将执行的字符串:
var my_data = eval(json_string);
Run Code Online (Sandbox Code Playgroud)
或者,使用jQuery.parseJSON()或JSON.parse():
var my_data = jQuery.parseJSON(json_string);
var my_data = JSON.parse(json_string);
Run Code Online (Sandbox Code Playgroud)
人们之所以喜欢使用jQuery.parseJSON()或JSON.parse()过度eval()是因为EVAL是邪恶的:
以上解释是否回答了您的问题?您可以在www.json.org找到有关JSON的更多信息.
| 归档时间: |
|
| 查看次数: |
2153 次 |
| 最近记录: |