目录

一,什么是对象?

二,创建一个对象

三,对象的嵌套

四,对象的属性与修改

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();

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

三,对象的嵌套

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

var obj1 = {
    str1: 'woaini',
    "10p": 10,
    fun1: function() {
        console.log(2)
    },
    obj_inn: obj2 = {
        num: 1
    }
};
console.log(obj1.obj_inn.num);

四,对象的属性与修改

1,使用点.运算符

var obj1 = {
    str1: 'woaini',
};
console.log(obj1.str1);

2,使用[]符号

var obj1 = {
    str1: 'woaini',
};
console.log(obj1['str1'])

        记住键需要加上引号。

3,修改属性

var obj1 = {
    str1: 'woaini',
};
obj1.str1 = 666
console.log(obj1['str1'])

五,给对象添加属性

var obj1 = {
};
obj1.name = 'xiaoming';
obj1['age'] = 10;
console.log(obj1.age, obj1.name);

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

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

var obj1 = {
    str1: 'woaini',
};
obj1.str1 = 666
obj1.age = 18
console.log(Object.keys(obj1))
// [ 'str1', 'age' ]

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

var obj1 = {
    str1: 'woaini',
};
obj1.str1 = 666
obj1.age = 18
console.log(delete obj1.age)
// true

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

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

var obj1 = {
    str1: 'woaini',
};
obj1.str1 = 666
obj1.age = 18
for (var item in obj1) {
    console.log(obj1[item])
}

七,Object对象方法

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

1,Object对象的本身方法

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

Object.add = function() {
    console.log(1)
}
Object.add()

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

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

function f() {
    console.log(1)
};
Object.prototype.fun = f;
var obj = {}
obj.fun()

八,函数与对象注意点

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

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

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

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

发表回复