JSON字符串忽略数组中的一些值
JSON stringify ignore some values in array
数组看起来像这样:
["1","2",R:"aviv",remove:function]0:"1"1:"2"R: "测试"长度:2__proto__:数组[0]
当我对这个数组使用JSON.stringify()时,我得到:
["1","2"]
这是因为数组长度为2,请问我该如何解决?我需要用这个数组将ajax发布到php脚本中,并且我丢失了一些nesesarry数据。
谢谢,Aviv
["1", "2", R: "aviv", remove: function]
不表示数组-这是无效语法。
无论如何,假设代码旨在将创建的数组描述为:
arr = ["1", "2"]
arr.R = "aviv"
arr.remove = function () {}
然后R
或remove
属性都将使用JSON.stringify进行序列化,因为它将数组映射到JSON数组。
虽然[JavaScript]数组是对象的专业化,特别是它们支持"expando-properties",但JSON数组和JSON对象是不同的数据类型。
因此,JSON数组没有映射键的方法,也不会映射其他属性:实际实现将在数组索引[0,arr.length)
上迭代,因为它将数组映射到JSON数组。
要将额外的键映射为JSON对象,使用[JavaScript]对象(而不是数组)开始,该对象将映射到JSON对象:
notArray = { 0: "1", 1: "2", R: "aviv", remove: function () {} }
当然,也许JSON应该有一个更深层次的结构:记住上面的映射规则。
以下是两种情况的示例输出(请注意,function
没有映射):
JSON.stringify(arr) // -> ["1","2"]
JSON.stringify(notArray) // -> {"0":"1","1":"2","R":"aviv"}
相关文章:
- 高亮显示与数组字符串一起使用时文本插件中断
- 从数组/字符串中删除所有小数和单个数字
- 使用Javascript regex替换“index”数组字符串
- 如何将复选框中的选中值收集为 javascript 数组/字符串
- 将数组数组字符串转换为 Javascript 数组数组的优雅方法
- 如何将数组字符串转换为数组
- 通过数组字符串访问JavaScript对象中的值
- Javascript数组字符串作为图像键
- Chrome和Firefox正在检索字符,而不是javascript中的数组字符串
- 如何在 JavaScript 函数中从 PHP end 传递数组字符串作为参数
- Jquery 如何检查数组字符串值是否在文本区域中
- 如何转换数组字符串
- JS数组字符串将名称修补到数组(对象)
- 在Javascript中从数组字符串中查找单个或多个值
- 如何将java数组字符串分配给javascript数组字符串
- 如何在javascript中将子数组字符串的数组转换为子数组的数组?
- 如何将字符串中的特殊值放入数组字符串
- 如何在JavaScript中给出RouteUrl中的数组字符串
- 在javascript的for循环中设置数组's字符串元素的长度为一个变量
- 如何从“数组字符串”中获取键值在javascript