JavaScript(js)对象常用操作,JS操作JSON总结

时间:2023-03-08 18:30:47
  1. 数据类型判断可以通过一元操作符typeof,此操作符可以判断大部分JS数据类型。

    也可以通过instanceof来判断。如:

    var a = [];

    alert(typeof a); // object

    alert(a instanceof Array); //return true

    JavaScript(js)对象常用操作,JS操作JSON总结
  2. var a = {};

    把a定义为对象。

    可以通过

    a[key] =  value;

    进行赋值。

    判断a对象的长度,可以通过:

    var length=0;

    for(var jsObj in a){

    length++;

    }

    js对象没有length属性,不能直接获取对象个数。

    JavaScript(js)对象常用操作,JS操作JSON总结
  3. 取值:a[...key....]

    删除数据: delete a[...key....]

    JavaScript(js)对象常用操作,JS操作JSON总结
  4. 以上类似于json格式的js对象。

    对于此js对象不保证存放的顺序,存进去与取出来的顺序可能不一致。

    要解决此问题,可以使用Array对象来处理。

    使对象具有JAVA中Map的功能。

    function Map() {

    this.elements = new Array();

    crud方法在此省略。。。。

    }

    JavaScript(js)对象常用操作,JS操作JSON总结
  5. this.elements.length  //获取Array中的元素个数

    其它方法可以参考Array对象的特性。

    JavaScript(js)对象常用操作,JS操作JSON总结
  6. JS代码易于出错,调试JS代码常用firefox浏览器插件Firebug,Aptana等

    JavaScript(js)对象常用操作,JS操作JSON总结
    JavaScript(js)对象常用操作,JS操作JSON总结
    var params = {};
    params['jybblx'] = "tongyong";
    params['gtbb'] = "2.0";
    params['querytitle'] = {
    "jjcc" : "基金持仓",
    "zjls" : "资金流水",
    "wtcj" : "委托成交",
    "day" : "当日",
    "month" : "一个月内",
    "year" : "半年内"
    };
    params['wtzt'] = {"":"未报","":"正报","":"已报","":"已报待撤","":"部成待撤","":"部撤","":"已撤","":"部成","":"已成","":"废单","A":"待报","B":"正报"};
    params['message'] = {};
    params['message']['yzzz_success'] = "转账请求已提交,请在“查流水”中查看转账结果!"; // 银证转账_成功
    params['message']['xgmm_success'] = "修改密码成功";
    params['message']['xgsg_success'] = "委托下单成功"; // 新股申购 委托下单成功
    params['message']['zjhz_success'] = "调拨操作成功"; 取值用点:
    if(params.lowVersion),
    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式。同时,JSON是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON数据不须要任何特殊的 API 或工具包。
    
        本文主要是对JS操作JSON的要领做下总结。
    
        在JSON中,有两种结构:对象和数组。
    
        . 一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间运用 “,”(逗号)分隔。 名称用引号括起来;值如果是字符串则必须用括号,数值型则不须要。例如:
    
        var o={"xlid":"cxh","xldigitid":,"topscore":,"topplaytime":"2009-08-20"};
    
        . 数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间运用 “,”(逗号)分隔。
    
        例如:
    
        var jsonranklist=[{"xlid":"cxh","xldigitid":,"topscore":,"topplaytime":"2009-08-20"},{"xlid":"zd","xldigitid":,"topscore":,"topplaytime":"2009-11-20"}];
    
        为了方便地处理JSON数据,JSON提供了json.js包,下载地址:http://www.json.org/json.js
    
        在数据传输流程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键。例如:
    
        JSON字符串:
    
        var str1 = '{ "name": "cxh", "sex": "man" }';
    
        JSON对象:
    
        var str2 = { "name": "cxh", "sex": "man" };
    
        一、JSON字符串转换为JSON对象
    
        要运用上面的str1,必须运用下面的要领先转化为JSON对象:
    
        //由JSON字符串转换为JSON对象
    
        var obj = eval('(' + str + ')');
    
    或者
    
        var obj = str.parseJSON(); //由JSON字符串转换为JSON对象
    
        或者
    
        var obj = JSON.parse(str); //由JSON字符串转换为JSON对象
    
        然后,就可以这样读取:
    
        Alert(obj.name);
    
        Alert(obj.sex);
    
        特别留心:如果obj本来就是一个JSON对象,那么运用 eval()函数转换后(哪怕是多次转换)还是JSON对象,但是运用 parseJSON()函数处理后会有疑问(抛出语法异常)。
    
        二、可以运用 toJSONString()或者全局要领 JSON.stringify()将JSON对象转化为JSON字符串。
    
        例如:
    
        var last=obj.toJSONString(); //将JSON对象转化为JSON字符
    
        或者
    
        var last=JSON.stringify(obj); //将JSON对象转化为JSON字符
    
        alert(last);
    
        留心:
    
        上面的多个要领中,除了eval()函数是js自带的之外,其他的多个要领都来自json.js包。新版本的 JSON 修改了 API,将 JSON.stringify() 和 JSON.parse() 两个要领都注入到了 Javascript 的内建对象里面,前者变成了 Object.toJSONString(),而后者变成了 String.parseJSON()。如果提示找不到toJSONString()和parseJSON()要领,则说明您的json包版本太低。