• js中 json 和 对象的区别


    什么是json ? json怎么用的(怎么定义)?

    JSON是js的一种数据格式而已;定义:{"键名1":"值1""键名2":"值2"};文字描述就是: 以“{”开始 ,以“}”结束 ,键值对 键名用双引引起来,键值 如果是string类型,那么用双引引起来,其他则不用双引引起来;

    看以下例子就可以知道JSON的定义了;使用方式同对象;

     1 <script>
     2 var obj2={};//这只是JS对象
     3 var obj3={100,height:200};/*这跟JSON就更不沾边了,只是JS的 对象 */
     4 var obj4={'width':100,'height':200};/*这跟JSON就更不沾边了,只是JS的对象 */
     5 var obj5={"width":100,"height":200,"name":"rose"}; /*我们可以把这个称做:JSON格式的JavaScript对象 */
     6 var str1='{"width":100,"height":200,"name":"rose"}';/*我们可以把这个称做:JSON格式的字符串 */
     7 var a=[
     8  {"width":100,"height":200,"name":"rose"},
     9  {"width":100,"height":200,"name":"rose"},
    10  {"width":100,"height":200,"name":"rose"},
    11  ];
    12  /*这个叫JSON格式的数组,是JSON的稍复杂一点的形式 */
    13 var str2='['+
    14  '{"width":100,"height":200,"name":"rose"},'+
    15  '{"width":100,"height":200,"name":"rose"},'+
    16  '{"width":100,"height":200,"name":"rose"},'+
    17  ']' ;
    18  /* 这个叫稍复杂一点的JSON格式的字符串 */
    19 </script>

    那么什么是对象呢?

    简单来说,js对象就是 一种变量;一种引用类型变量object;他的定义方式有三种;具体可以查看https://www.cnblogs.com/lixiuming521125/p/10950695.html;其中一种定义方式是字面量定义;就是var obj3={100,height:200};这里的obj3和obj5差不多;

    JSON和JS对象区别对比表

    区别

    Json

    Javascript对象

    含义

    仅仅是一种数据格式

    表示类的实例

    传输

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

    不能传输

    表现

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

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

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

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

    相互转换

    Json字符串转化为json格式的对象:

    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

    参考地址:https://www.jb51.net/article/107041.htm

     
     
  • 相关阅读:
    Mac下安装svn服务器
    php 当前日期加一天和指定日期加一天
    MariaDB与MySQL
    JS中判断null、undefined与NaN的方法
    PHP保留两位小数的几种方法
    jquery的cookie插件
    mysql(5.7以上)查询报错:ORDER BY clause is not in GROUP BY..this is incompatible with sql_mode=only_full_group_by
    MySQL数据的导出和导入
    qrCode二维码字符串长度太多压缩的问题
    解决 img 标签上下出现的间隙
  • 原文地址:https://www.cnblogs.com/lixiuming521125/p/13581231.html
Copyright © 2020-2023  润新知