• JavaScript对象详解,js对象属性的添加


    目录

    一,什么是对象?

    二,创建一个对象

    三,对象的嵌套

    四,对象的属性与修改

    1,使用点.运算符

    2,使用[]符号

    3,修改属性

    五,给对象添加属性

    六,查看与删除对象的属性

    1,使用Object.keys(obj)方法查看对象所有属性

    2,使用delete()方法删除对象属性

    3,使用增强版for循环遍历对象元素

    七,Object对象方法

    1,Object对象的本身方法

    2,Object对象自己的实例方法

    八,函数与对象注意点

    1,函数体里调用其他函数

    2,函数体行数不超过50行


    一,什么是对象?

    英文名object,翻译成中文就是对象。用英语的角度来说object就是物体实体,即使他看不见摸不着。中文的对象指的是女朋友。在计算机中,用英语的角度理解对象,就是说:放在内存里面的复杂数据集合,也叫做数据与方法的封装,是一种编程逻辑概念。

    函数是对数据与代码的封装,假如再把函数及函数外的数据进行封装,那就是object,即对象。

    二,创建一个对象

    将一些函数与对象封装起来就是对象,所谓封装在语法层面就是,把函数和变量用英文大括号{}包起来。使用:key:value的形式,value可以是对象的值,也可以是对象的地址。

    key的值可以不符合标识符的命名规范,但是必须使用引号引起来,比如’12qw’=1。每个键值对之间使用英文逗号隔开。

    //创建一个obj对象
    var obj1 = {
        str1: 'woaini',
        "10p": 10
    };
    
    function f() {
        console.log(1)
    };
    var obj1 = {
        str1: 'woaini',
        "10p": 10,
        fun: f,
        fun1: function() {
            console.log(2)
        }
    };
    obj1.fun();
    obj1.fun1();
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    如果一个键的值是一个函数,则称这个键名为这个对象的方法。如果一个键的值是基本数据类型,则称这个键名为这个对象的属性。

    三,对象的嵌套

    即对象的属性仍然可以是一个对象。运算符.表示getattr的意思,即访问对象属性。

    var obj1 = {
        str1: 'woaini',
        "10p": 10,
        fun1: function() {
            console.log(2)
        },
        obj_inn: obj2 = {
            num: 1
    
        }
    };
    console.log(obj1.obj_inn.num);
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    四,对象的属性与修改

    1,使用点.运算符

    var obj1 = {
        str1: 'woaini',
    };
    console.log(obj1.str1);
    
    • 1
    • 2
    • 3
    • 4

    2,使用[]符号

    var obj1 = {
        str1: 'woaini',
    };
    console.log(obj1['str1'])
    
    • 1
    • 2
    • 3
    • 4

    记住键需要加上引号。

    3,修改属性

    var obj1 = {
        str1: 'woaini',
    };
    obj1.str1 = 666
    console.log(obj1['str1'])
    
    • 1
    • 2
    • 3
    • 4
    • 5

    五,给对象添加属性

    var obj1 = {
    
    };
    obj1.name = 'xiaoming';
    obj1['age'] = 10;
    console.log(obj1.age, obj1.name);
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    六,查看与删除对象的属性

    1,使用Object.keys(obj)方法查看对象所有属性

    var obj1 = {
        str1: 'woaini',
    };
    obj1.str1 = 666
    obj1.age = 18
    console.log(Object.keys(obj1))
    // [ 'str1', 'age' ]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    2,使用delete()方法删除对象属性

    var obj1 = {
        str1: 'woaini',
    };
    obj1.str1 = 666
    obj1.age = 18
    console.log(delete obj1.age)
    // true
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    删除一个对象里不存在的属性不仅不会报错而且还会返回true。当试图删除一个无法删除的属性时,则会返回false。删除对象属性:实际上是与相关的对象进行解绑。

    3,使用增强版for循环遍历对象元素

    var obj1 = {
        str1: 'woaini',
    };
    obj1.str1 = 666
    obj1.age = 18
    
    for (var item in obj1) {
        console.log(obj1[item])
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    七,Object对象方法

    这里讲解关于Object对象的一些知识,它类似于基类,是所有对象的老大。

    1,Object对象的本身方法

    Object本身就是一个对象,可以给他添加属性和方法。利用键值对形式给对象添加的方法叫做Object本身方法。只能使用Object.funcname()来执行。

    Object.add = function() {
        console.log(1)
    }
    Object.add()
    
    • 1
    • 2
    • 3
    • 4

    2,Object对象自己的实例方法

    使用Object.prototype.name()形式添加的方法称为对象的实例方法。可以被任意对象使用。

    function f() {
        console.log(1)
    };
    Object.prototype.fun = f;
    var obj = {}
    obj.fun()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    八,函数与对象注意点

    1,函数体里调用其他函数

    可以再一个函数的函数体里面调用另一个函数,即函数名+()。

    2,函数体行数不超过50行

    每个函数的函数体不超过50行,如果超过的话最好拆分,使用函数搭积木实现功能。

    先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦

  • 相关阅读:
    Java项目:SSM的食堂点餐系统
    【Rust日报】2022-09-13 Stabilize GAT
    2023高教杯数学建模1:ABC题目+初步想法
    【Sping 源码解析】Spring XML方式准备创建bean
    Util应用框架核心(三) - 服务注册器
    JavaScript- 踏入Web API
    Activiti
    linux(centOs7)部署mysql(8.0.20)数据库
    《中国垒球》:决赛会师·占得先机
    攻防世界-WEB-Web_php_include
  • 原文地址:https://blog.csdn.net/m0_54850467/article/details/126105556