js实例和对象方法示例

99 阅读1分钟
function Foo () {
    // 构造属性
    getName = function () {
        console.log(1)
    }
    return this
  }
  Foo.getName = function () {
    console.log(2)
  } // 构造函数的静态属性,只能自身访问 ,实例无法访问
  Foo.prototype.getName = function () {
    console.log(3)
  } // 原型属性
  // 函数表达式
  var getName = function () {
    console.log(4)
  }
  // 函数声明,存在变量提升
  function getName () {
    console.log(5)
  }
  Foo.getName() // 2
  getName()  // 4
  Foo().getName()  // 1
  getName() // 1
  new Foo().getName() // 3

构造属性和原型属性实例均可访问,构造函数自身无法访问

纯属自己做个记录