zoukankan      html  css  js  c++  java
  • JSON对象与JavaScript对象的区别

    //js对象的字面量表示法: 
    var people1={ 
    name:'hehe', 
    age:18 
    }; 
    
    //json的格式是: 
    var people1={ 
    "name":'hehe', 
    "age":18 
    }; 

        二者相同的地方是,看起来都是数据,而且恰巧又都是文本;不同的地方在于,JS字面量的文本是被脚本引擎直接解析的,而JSON的文本,如果要转化为JS对象的话,是交给eval函数来处理的,那么,如何理解JSON的文本,就取决于这个函数,而不是脚本引擎,因为这2者的处理根本就不在一个层面上。

    var obj={100,height:200}

    这样的并不叫JSON,并且JSON只是一种数据格式,并不是具体的实例对象。但很多人把这样的JS对象当成JSON。  

         1、JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,JSON格式的数据,主要是为了跨平台交流数据用的。 

         2、但JSON和JavaScript确实存在渊源,可以说这种数据格式是从JavaScript对象中演变出来的,它是JavaScript的一个子集。JSON本身的意思就是JavaScript对象表示法(JavaScript Object Notation),它用严格的JavaScript对象表示法来表示结构化的数据。 

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

        4、JSON只是一种数据格式(或者叫数据形式),数据格式其实就是一种规范,格式、形式、规范是不能用来存诸数据的。我们不能把以下的对象叫JSON,比如:

            var obj2={}; //这只是JS对象
    var obj3={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格式的字符串 */
  • 相关阅读:
    Moss2010 部署命令
    socket形象描述
    Android UI 的更新
    android AIDL 进程间通信
    中文设置成粗体的方法
    android 主件之 Service
    android activity
    拦截Activity的后退键处理
    android 解析json数据格式
    防止事件导致的oncreate的多次调用
  • 原文地址:https://www.cnblogs.com/sylys/p/11630906.html
Copyright © 2011-2022 走看看