javascript-数组对象

对象是一堆属性的集合,其实它和数组是相通的

对象语法

var person={
                 "age":18,
                 "weight":"123kg",
                 "height":"170cm",
                 "arm":2,
                 "leg":2
            }
语法:
var obj={"property1":"value1","property2":"value2"}

构造对象

<script>
//构造对象
    var obj = new Object();
    // obj["gender"] = "女";
    // obj.age = 18;
    // console.log(obj);

     // console.log(obj.gender);  //访问对象
    // console.log(obj[gender]);  //访问对象

    obj.cook = function () {
        console.log("做个西红柿");
    }
    obj.cook();  //调用函数对象
</script>

字面量语法

<script>
//字面量语法
    //var obj = {};

    var obj = {
        "name": "鞠婧祎",
        "gender": "女",
        "age": 18,
        "dance": function () {
            console.log("爵士舞");
        }
    };
     console.log(obj);
     console.log(obj.name); //鞠婧祎
     console.log(obj["name"]); //鞠婧祎



     var obj = {
        "name": "鞠婧祎",
        "gender": "女",
        "age": 18,
        "dance": function () {
            // console.log("爵士舞");
            // console.log(this.name);
            return function () {
                console.log(this.name); //this==window
            }
        }
    };
    var fun = obj.dance();
    fun.call(obj)
</script>

对象的访问

<script>
    var obj = {
        "age": 18,
        "weight": " 123kg",
        "height": "170cm",
        "arm": 2,
        "leg": 2
    }
    for (var i in obj) {
        document.write(i + "==>" + obj[i] + "<br>")
    }



    // function Animal(name,age){
    //     this.name = name;
    //     this.age = age;
    //     this.name = "旺旺"
    //     this.age = 2;
    // }
    // var dog = new Animal("狗蛋",1);
    // console.log(dog);

</script>

遍历json

<script>
    //1.
        var arr =[{ "firstName" : "John", "lastName": "Doe" },
    { "firstName": "Anna" ,"lastName" :"Smith" },
    { "firstName": "Peter" ,"lastName" :"Jones" }];

       for(var i = 0; i < arr.length; i++){
        var obj = arr[i];
        for(var j in obj){
        document . write(obj[j] + "&ensp;");
        document . write("<br>");
            }
        }


    //2.
    var arr = [
        { "stuId": 1001, "stuName": "邹路", "stuGender": "男" },
        { "stuId": 1002, "stuName": "刘字磊", "stuGender": "男" },];

    for (var i = 0; i < arr.length; i++) {
        var obj = arr[i];
        for (var j in obj) {
            document.write(obj[j] + "&ensp;");
        }
        document.write("<br>")
    }

    
    //3.
    var arr = {
        "employees": [
            { "firstName": "John", "lastName": "Doe" },
            { "firstName": "Anna", "lastName": "Smith" },
            { "firstName": "Peter", "lastName": "Jones" }
        ]
    };
    var obj = arr.employees;
    for (var i = 0; i < obj.length; i++) {
        var obj1 = obj[i]
        for (var j in obj1) {
            document.write(obj1[j] + "&ensp;");
        }
        document.write("<br>")
    }
</script>

 解析json

<script>
        // var arr = { "employees": [{ "firstName": "John", "lastName": "Doe" }, { "firstName": "Anna", "lastName": "Smith" }, { "firstName": "Peter", "lastName": "Jones" }] };
        // var obj = eval("{age:10,name: 'jack'}");
        //把字符串转化json数据  反序列化
        // var obj = JSON. parse(str);
        var arr = [{ "name": "xiaoming", "age": 20 }, { "name": "xiaohong", "age": 10 }];
        var str = JSON.stringify(arr); //把json数据转化为字符串   序列化
        console.log(str);

    </script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值