• JavaScript对象


    JavaScript对象

    对象属于一种复合数据类型,在对象中可以保存多个不同的数据类型的 属性

    对象的分类

    1. 内建对象

      -由es标准中定义的对象,在任何的es的实现中都可以使用

      -比如:math string number Boolean function object。。。

    2. 宿主对象

      -由js的运行环境提供的对象,目前来讲主要指浏览器提供的对象

      -比如:BOM DOM

      console.log();

      document.write();

    3. 自定义对象

      -有开发人员自己创建的对象

    创建对象

    使用new关键字调用的函数,是构造函数constructor

    构造函数是专门用来创建对象的函数

    使用typeof检查一个对象时,会返回object

    var obj = new Object();
     //console.log(typeof  obj);
    

    在对象中保存的值称为属性

    向对象添加属性

    语法: 对象, 属性名 = 属性值

    读取属性

    语法:对象.属性名

     		 //name属性
            obj.name = "张三";
            //gender
            obj.gender = "男"
            //age
            obj.age = 17;
            console.log(obj);
            document.write(obj.name, obj.gender, obj.age);
    

    修改对象的属性值

    语法: 对象.属性名 = 新值

            obj.name = "jack"
            console.log(obj.name);
    

    删除对象的属性

    语法:delete 对象.属性名

     	   delete obj.name;
           console.log(obj.name);
    

    属性名和属性值

            var obj = new Object;
    
            /* 
                向对象中添加属性
                属性名:
                    -对象的属性名不强制要求遵守标识符的规范
                        什么乱七八槽的名字都可以使用
                    -但是我们使用还是尽量按照标识符的规范去做
            */
    
            obj.name = "tom";
    
            obj.var = "jan";
            console.log(obj.var);
    

    如多要使用特殊的属性名,不能采用 . 的方式来操作

    需要使用另一种方式,

    语法:对象["属性名"] = 属性值

    读取时也需要采用这种方法

    使用[]这种形式区操作属性,更加的灵活

    在[]中可以直接传递一个变量,这样变量值就会读取那个属性

    例如:数字...

           obj["1234"] = 1234;
           obj["@#$%^&*()@#$%^**"] = "!@#$%^&*()_+"
           console.log(obj["1234"]);
           console.log(obj["@#$%^&*()@#$%^**"])
    
           var n = "1234";
           var m = "@#$%^&*()@#$%^**";
           console.log(obj[n]);
            document.write(obj[n]);
            document.write(obj[m]);
    

    属性值

    js对象的属性值,可以是任意的数据类型

    甚至也可以是一个对象

            obj.test = true;
            obj.test2 = undefined;
            obj.test3 = String;
            console.log(obj.test);
            console.log(obj.test2);
            console.log(obj.test3);
    

    in 运算符

            //创建一个对象
            var obj2 = new Object;
            obj2.name = "timi";
    
            //将obj2设置为obj的属性
            obj.test4 = obj2;
    
            console.log(obj.test4.name);
    
            /* 
                in 运算符
                    -通过运算符可以检查一个对象中是否含有指定的属性
                        如果有则返回true 没有则返回false
                    - 语法
                        “属性名” in 对象
            */
            //检查obj中是否含有test5属性
            console.log("test5" in obj)
    
  • 相关阅读:
    算法训练——整数平均值
    算法训练——字符删除
    算法训练——最大的算式
    flask_sqlalchemy查询时将date类型修改为datetime类型
    mysql更改时区
    python 省略号 三个点...的含义
    ubuntu系统安装gedit
    python操作hdfs总结
    流式上传下载
    python将文件夹打包
  • 原文地址:https://www.cnblogs.com/meiwt/p/14467979.html
Copyright © 2020-2023  润新知