Kernel(内核)

    JS是单线程

    DOM操作慢,跨线程

    JS运行环境
    API:window,setTimeout, document

    window中的Object, Array都是构造函数

    prototype与proto

    1. var b = {}
    2. console.dir(b) // 查看结构
    3. b.__proto__ === Object.prototype // true
    4. b.__proto__.toString === Object.prototype.toString // true
    5. b.__proto__.toString = "hello"
    6. b.toString // "hello"
    7. Object.prototype.toString // "hello"
    8. var c = {}
    9. c.toString //"hello"
    10. Array.prototype.__proto__ === Object.prototype // true

    prototype存储了对象的共有属性 prototype在构造函数里 proto在实例里 prototype和proto指向同一个地址

    自定义对象

    1. var Person = function(name, age) { this.name = name; this.age = age; }
    2. Person.prototype.hello = function() {console.log("hello")};
    3. var jack = new Person("jack", 19);
    4. jack.hello() // hello

    image.png