构造函数的特点:

  1. /* 构造函数的特点:
  2. 1.构造函数的首字母大写
  3. 2.在构造函数内部可以通过this关键字,给其添加自由属性
  4. 3.可以通过new关键字实例化一个对象 */
  1. <script>
  2. /* es6之前没有class */
  3. /* 构造函数 */
  4. /*
  5. Person
  6. 自有函数 name,age
  7. 共有方法 原型上定义 sayName,之后所有使用关键字的实力都有这个方法
  8. 共有属性 */
  9. function Person(name,age){
  10. this.name = name;
  11. this.age = age;
  12. }
  13. Person.prototype.sayName = function(){
  14. console.log(this.name); //lisi
  15. }
  16. Person.prototype.sayAge = function(){
  17. console.log(this.age); //18
  18. }
  19. Person.prototype.skill = "vue"
  20. var p = new Person("lisi",18);
  21. p.sayName();
  22. p.sayAge();
  23. console.log(p.skill); //vue
  24. /* hasOwnProperty() 判断一个属性是自由还有共有的 */
  25. console.log(p.hasOwnProperty("skill")); //false
  26. /* 构造函数的特点:
  27. 1.构造函数的首字母大写
  28. 2.在构造函数内部可以通过this关键字,给其添加自由属性
  29. 3.可以通过new关键字实例化一个对象 */
  30. </script>