JSON与JS对象的区别与对比

发布时间 - 2026-01-10 23:20:39    点击率:

JSON是什么?(JSON和JavaScript对象有什么区别?)如何把JS对象转化为JSON字符串,又如何把JSON字符串转化为JavaScript对象?

JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧。 JSON 是 JavaScript 原生格式,这意味着在JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具包。JSON的规则很简单: 对象是一个无序的“名称/值”对集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“名称/值”对之间使用“,”(逗号)分隔。

它是一种严格的js对象的格式,JSON的属性名必须有双引号,如果值是字符串,也必须是双引号;

JSON只是一种数据格式(或者叫数据形式);

<script>
var obj2={};//这只是JS对象
var obj3={width:100,height:200};/*这跟JSON就更不沾边了,只是JS的 对象 */
var obj4={'width':100,'height':200};/*这跟JSON就更不沾边了,只是JS的对象 */
var obj5={"width":100,"height":200,"name":"rose"}; /*我们可以把这个称做:JSON格式的JavaScript对象 */
var str1='{"width":100,"height":200,"name":"rose"}';/*我们可以把这个称做:JSON格式的字符串 */
var a=[
 {"width":100,"height":200,"name":"rose"},
 {"width":100,"height":200,"name":"rose"},
 {"width":100,"height":200,"name":"rose"},
 ];
 /*这个叫JSON格式的数组,是JSON的稍复杂一点的形式 */
var str2='['+
 '{"width":100,"height":200,"name":"rose"},'+
 '{"width":100,"height":200,"name":"rose"},'+
 '{"width":100,"height":200,"name":"rose"},'+
 ']' ;
 /* 这个叫稍复杂一点的JSON格式的字符串 */ 
</script>

JSON和JS对象区别对比表

区别

Json

Javascript对象

含义

仅仅是一种数据格式

表示类的实例

传输

可以跨平台数据传输,速度快

不能传输

表现

1,键值对方式,键必须加引号

2,值不能是方法函数,不能是undefined/NaN

1,键值对方式,键不加引号

2,值可以是函数、对象、字符串、数字、boolean 等

相互转换

Json转化为js对象:

1,JSON.parse(jsonstring);
(不兼容ie7)

2,Jsobj=eval("("+jsonstring+")");

(兼容所有浏览器,但不安全,会执行json里面的表达式?)

Js对象转换为Json:

JSON.stringify(jsobj);(不兼容ie7)

其他

调用json官网的js,实现parse 和 stringify 在各个浏览器的兼容:

https://github.com/douglascrockford/JSON-js/blob/master/json2.js

总而言之你可以理解为JSON是JS下的一种数据格式,他从属于JS,并且在处理JSON数据时可直接使用JS内置API


# JSON与JS对象的区别  # Json对象与Json字符串互转(4种转换方式)  # js 将json字符串转换为json对象的方法解析  # js中将字符串转换成json的三种方式  # jquery JSON的解析方式  # JSON.stringify 语法实例讲解  # 解析JSON对象与字符串之间的相互转换  # JS对象与JSON格式数据相互转换  # 用jQuery与JSONP轻松解决跨域访问的问题  # jQuery怎么解析Json字符串(Json格式/Json对象)  # 使用jsonp完美解决跨域问题  # 转化为  # 数据格式  # 我们可以  # 就更  # 键值  # 这跟  # 不兼容  # 是一个  # 双引号  # 是一种  # 你可以  # 不沾边  # 它是  # 工具包  # 很简单  # 这只  # 速度快  # 可直接  # 但不  # 不加 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何在IIS中新建站点并配置端口与IP地址?  Laravel怎么实现支付功能_Laravel集成支付宝微信支付  如何有效防御Web建站篡改攻击?  如何快速搭建高效简练网站?  Laravel的路由模型绑定怎么用_Laravel Route Model Binding简化控制器逻辑  为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】  laravel怎么通过契约(Contracts)编程_laravel契约(Contracts)编程方法  Laravel如何使用Facades(门面)及其工作原理_Laravel门面模式与底层机制  ChatGPT怎么生成Excel公式_ChatGPT公式生成方法【指南】  如何用AI一键生成爆款短视频文案?小红书AI文案写作指令【教程】  浅析上传头像示例及其注意事项  Win11搜索不到蓝牙耳机怎么办 Win11蓝牙驱动更新修复【详解】  利用python获取某年中每个月的第一天和最后一天  Laravel API资源(Resource)怎么用_格式化Laravel API响应的最佳实践  详解Huffman编码算法之Java实现  php嵌入式断网后怎么恢复_php检测网络重连并恢复硬件控制【操作】  如何在IIS7中新建站点?详细步骤解析  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  Laravel如何设置自定义的日志文件名_Laravel根据日期或用户ID生成动态日志【技巧】  C++用Dijkstra(迪杰斯特拉)算法求最短路径  Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】  网站制作壁纸教程视频,电脑壁纸网站?  千库网官网入口推荐 千库网设计创意平台入口  如何在万网自助建站平台快速创建网站?  在线制作视频的网站有哪些,电脑如何制作视频短片?  三星网站视频制作教程下载,三星w23网页如何全屏?  如何在阿里云部署织梦网站?  浏览器如何快速切换搜索引擎_在地址栏使用不同搜索引擎【搜索】  网站制作大概要多少钱一个,做一个平台网站大概多少钱?  Laravel怎么创建自己的包(Package)_Laravel扩展包开发入门到发布  如何在阿里云虚拟服务器快速搭建网站?  Swift中循环语句中的转移语句 break 和 continue  制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  Laravel Livewire是什么_使用Laravel Livewire构建动态前端界面  东莞市网站制作公司有哪些,东莞找工作用什么网站好?  移动端脚本框架Hammer.js  微信小程序 require机制详解及实例代码  Linux系统命令中tree命令详解  如何快速上传自定义模板至建站之星?  如何在阿里云虚拟主机上快速搭建个人网站?  如何在局域网内绑定自建网站域名?  如何安全更换建站之星模板并保留数据?  Laravel用户认证怎么做_Laravel Breeze脚手架快速实现登录注册功能  详解Oracle修改字段类型方法总结  Laravel如何使用Gate和Policy进行权限控制_Laravel权限判定与策略规则配置  如何用美橙互联一键搭建多站合一网站?  Internet Explorer官网直接进入 IE浏览器在线体验版网址  微信小程序 input输入框控件详解及实例(多种示例)  进行网站优化必须要坚持的四大原则