直观理解

面向对象

3. 在 JavaScript中,几乎所有的事物都是对象。

  • 布尔型可以是一个对象。
  • 数字型可以是一个对象。
  • 字符串也可以是一个对象
    • 例:string.length
  • 日期是一个对象
  • 数学和正则表达式也是对象
  • 数组是一个对象
    • 例:array.length
  • 甚至函数也可以是对象

注意:

1. JavaScript中对象是引用类型

child::引用类型

2. JavaScript中方法被当作变量一样

  • 方法名只是一个变量,存储的指向函数这个对象
    • 也就是说,已经声明好的函数可以被替换掉

2.1. 实例:

class qql1 {
    toString() {
        return 'qql1'
    }
    sayHello() {
        return `hello ${this}`
    }
    changFunction() {
        this.sayHello = this.sayHello.bind('tony')
    }
}
let obj = new qql1();
console.log(obj.sayHello())//hello qql1
obj.changFunction()
console.log(obj.sayHello())//hello tony

JavaScript内置的对象

语法:

child::对象的操作