• JS基础笔记-关于对象


    对象

    JS中数据类型

    String、Number、Boolean、Null、Undefined------这些都是基本数据类型,其余都是对象;

    Object-----对象(引用数据类型);

    基本数据类型都是单一的值,值与值之间没有任何的联系。

    在JS中表示一个人能的信息(name、gender、age) 以下的每一个变量都是独立的,不能成为一个整体;

    var name = 'Lisa'; var gender = '男'; var age = 18;

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

    对象的分类

    1.内建对象

    由ES标准中定义的对象,在任何的ES的实现中都可以实现;

    比如:—Math、String、Number、Boolean、Function、Object…

    2.宿主对象

    由JS的运行环境提供的对象,目前来讲主要指由浏览器提供的对象;比如:BOM DOM;

    console.log(); //console即为对象;

    3.自定义对象

    开发人员自己创建的对象;

    对象的基本操作

    创建对象

    使用new关键字调用的函数,是构造函数constructor,构造函数是专门用来创建对象的函数;

    var obj = new Object();

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

    向对象添加属性语法格式: 对象.属性名=属性值;

     var obj = new Object();
    	obj.name = '小红';
    	obj.gender = '男';
    	obj.age = 18; //输出{name: '小红', gender: '男', age: 18} 
    
    • 1
    • 2
    • 3
    • 4

    读取对象的属性

    语法格式:对象.属性名

    obj.name

    注意:读取对象中没有的属性,不会报错,会返回undefined

    修改对象的属性值

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

    删除对象的属性

    语法格式: delete 对象.属性名

    delete obj.name;

    注意


    注意:关于对象的属性名, 不强制要求遵守标识符的规范,尽量还是规范

    如果要使用特殊的属性名,不可以使用点的方式来操作

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

     var obj = new Object();//创建一个空对象
    	obj["123"] = 21;
    	console.log(obj["123"]); 
    
    • 1
    • 2
    • 3

    使用 [ ] 这种形式来操作属性,更加的灵活, [ ] 中也可以放变量,这样变量是多少就会读取哪个属性


    注意:关于属性值

    属性值可以时任意值,也可以是对象

     var obj = new Object();
    	var obj2 = new Object();
    	obj2.name = '猪八戒';
    	obj.test = obj2;
    	console.log(obj.test.name);//猪八戒 
    
    • 1
    • 2
    • 3
    • 4
    • 5

    检查对象中是否有某一个对象

    语法: “属性名” in 对象

    console.log("name" in obj2); 显示true或false

    基本数据类型和引用数据类型

    • 基本数据类型比较的是值
    • 引用数据类型保存的是地址

    使用对象字面量

    创建一个对象

    var obj = {}; //创建了一个空对象

    使用对象字面量可以在创建对象时,直接给对象中的属性;

    语法:{属性名:属性值,属性名:属性值…}

     var obj = {
    		name: "猪八戒",
    		age: 12,
    		gender: "男",
    		test: { name: "沙和尚" }
    	};
    	console.log(obj); 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
  • 相关阅读:
    基于Python的性能优化
    【JavaScript-函数】函数是什么?一文搞懂js当中的函数,
    rk版本编译系统
    【论文复现】QuestEval:《QuestEval: Summarization Asks for Fact-based Evaluation》
    扩散模型实战(十):Stable Diffusion文本条件生成图像大模型
    贰[2],QT异常处理
    猿创征文|Python基础——Visual Studio版本——DBHelper-MySQL版本
    Android 自定义组件
    第八章:多线程
    RK3399驱动开发 | 18 - 使用 usb3.0 作为device模拟u盘(基于linux5.4.32内核)
  • 原文地址:https://blog.csdn.net/web2022050903/article/details/126229122