240 发简信
IP属地:北京
  • git merge的三种操作merge, squash merge, 和rebase merge

    git merge的三种操作merge, squash merge, 和rebase merge 举例来说:假设在master分支的B点拉出一个新的分支dev,经过一段时间开...

  • vuex工作原理详解

    前言 vuex作为vue官方出品的状态管理框架,以及其简单API设计、便捷的开发工具支持,在中大型的vue项目中得到很好的应用。作为flux架构的后起之秀,吸收了前辈redu...

  • 这就没了?

    Markdown源码是怎么被解析的之二:站在上帝的角度看整体代码

    既然要理解Markdown源码是怎样被处理的,我们需要先仔细思考一下一个Markdown编译器应该有什么构成: 词法解析器 帮助我们从源码中分析出Markdown规定的规...

  • 120
    一句话理解Vue核心内容

    想必教程大家已经看过,也动手做过一些Demo。倘若让大家用一句话概括'“vue是什么”,你的答案会是什么?。这里Vue官方教程也给出了自己的一句话解释。就是教程开头的第一句话...

  • // 每一个构造函数都有一个属性 原型 / 原型对象
    function Student(name, age, sex) {
    this.name = name;
    this.age = age;
    this.sex = sex;

    // this.sayHi = function () {
    // console.log('test');
    // }
    }
    Student.prototype.sayHi = function () {
    console.log('大家好,我是' + this.name);
    }

    // 通过Student构造函数,创建的对象,可以访问Student.prototype中的成员
    var s1 = new Student('lilei', 18, '男');
    var s2 = new Student('hmm', 18, '女');

    s1.sayHi();
    console.dir(s1);

    // 当调用对象的属性或者方法的时候,先去找对象本身的属性/方法 ,如果对象没有该属性或者方法。此时去调用原型中的属性/方法
    // 如果对象本身没有该属性/方法,原型中也没有该属性或者方法,此时会报错
    // s1.__proto__ 对象的__proto__ 等于 构造函数的Student.prototype
    // __proto__属性是非标准的属性
    //
    // console.log(s1.__proto__ === Student.prototype);
    // console.dir(s1.__proto__);
    // console.dir(Student.prototype);