zoukankan      html  css  js  c++  java
  • JSON 获取属性值的方法

      JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。其属性值的获取有三种方法

    1. 对象名.属性名, 类似于高级语言的写法

    var obj = '{"name":"wisdo", "age":"20"}';
    var data = eval('('+ obj +')');
    alert(obj.name);

    2. 以数组索引的方式来访问

    var obj = '{"name":"wisdo", "age":"20"}';
    var data = eval('('+ obj +')');
    alert(obj[0]);  // 输出的是 name

    3. 以字典索引的方式来访问

    var obj = '{"name":"wisdo", "age":"20"}';
    var data = eval('('+ obj +')');
    alert(obj['name']);  // 输出的是 name 值 
    

     在通常的情况下,一般是使用第一种方法,即通过对象名.属性名 的方式来访问,这样对于使用高级语言的编程很直观,也很容易理解,但这也有局限性,属性的名称要规范,key 要以字母或下划线开头的包括字母、下划线和数字的字符串,不能以数字开头.

    总结

      data.key和data[’key’]各自有自己的应用场景,一般情况使用data.key即可,也比较直观(它符合其它高级语言中访问对象中属性的方式);当key为一个变量时,并且使用在循环中,用data['key']这种方式。

    for(var i=0; i < 10; i++) {
    s += data['key' + i];  //循环调用,可简化代码}
    

      以数组索引的方式来访问,虽然不推荐,但也是有其应用价值的;如当建立一个与数据库中id一一对应的map对象的时候,可直接用id的数值做key,虽然你可以给它加上一个字母前缀来让它符合合法的变量名的标准并让它的数据能通过data.key的方式访问.

     

  • 相关阅读:
    深究递归和迭代的区别、联系、优缺点及实例对比
    提高Python运行效率的六个窍门
    C++设计模式——单例模式
    使用Python的turtle库实现七段数码管绘制
    Python 死循环和嵌套循环
    Python 随机数 random
    更改 pandas dataframe 中两列的位置
    Pandas中DataFrame修改列名
    MM 算法与 EM算法概述
    机器学习中的训练集、验证集和测试集
  • 原文地址:https://www.cnblogs.com/wisdo/p/5905543.html
Copyright © 2011-2022 走看看