使用JSON语法创建JS对象(重要)

  JS对象的键值可以加单引号或者不加或者加双引号

  JSON语法提供了一种更简单的方式来创建对象,可以避免书写函数,也可避免用new关键字,可以直接创建一个JS对象,使用一个花括号,然后将每个属性写成"key:value"的形式。

  从JavaScript1.2开始,创建对象有了一种更快捷的语法:

  格式如下:

            var p = {
                name: '张三',
                sex: '男',
                info: function() {
                    alert("这是函数格式!");
                }
            }

  这种语法就是一种JSON语法。多个属性用英文逗号分割,属性名和属性值一:分割,最后一个属性后面不再有逗号。

  属性值可以是普通字符串,也可以是任何基本数据类型,还可以是函数,数组,甚至可以是另外一种JSON语法的JS对象。

            var p = {
                'name': '张三',
                "sex": '男',
                age: 20,
                info: function() {
                    alert("这是函数格式!");
                },
                son: {
                    name: '张三儿子'
                }
            }

也可以用JSON语法创建数组,在早起的JS语法通过下面语法创建数组:

            //早期数组创建
            var a = new Array();
            a[0] = '张三';
            a[1] = '李四';
            //            早期方式二
            var a1 = new Array('张三', '李四');

JSON语法创建数组:

            //            JSON语法的数组
            var str = ['张三', '李四'];

JSON创建数组总是以英文括号[开始,以]结束,元素与元素之间以英文逗号(,)分割。

JSON创建JS对象案例一:

<!DOCTYPE html>
<html>

    <head>
        <meta charset="UTF-8">
        <title>使用JSON语法创建对象</title>
        <script type="text/javascript">
            //JSON语法的JS对象
            var p = {
                'name': '张三',
                "sex": '',
                age: 20,
                info: function() {
                    alert("这是函数格式!");
                },
                son: {
                    name: '张三儿子'
                }
            }
            alert(p);    
            p.info();
            alert(p.son.name);

            //早期数组创建
            var a = new Array();
            a[0] = '张三';
            a[1] = '李四';
            //            早期方式二
            var a1 = new Array('张三', '李四');

            //JSON语法的数组
            var a2 = ['张三', '李四'];
            alert(a2[1]);
        </script>
    </head>

    <body>

    </body>

</html>

结果:依次弹出:

 

原文地址:https://www.cnblogs.com/qlqwjy/p/7352453.html