原型的两种方式

 /* var Student = {
       name: 'Robot',
       height: 1.2,
       run: function () {
           console.log(this.name + ' is running...');
       }
   };
   var xiaoming = {
       name: '小明'
   };
   xiaoming.__proto__ = Student;
  console.log(xiaoming.name) ;
  console.log(xiaoming.run() );*/

   var Student = { // 原型对象
       name: 'Robot',
       height: 1.2,
       run: function () {
           console.log(this.name + ' is running...');
       }
   };
   function createStudent(name) {
// 基于Student原型创建一个新对象:
       var s = Object.create(Student);
// 初始化新对象:
       s.name = name;
       return s;
   }
   var xiaoming = createStudent('小明');
   xiaoming.run(); // 小明 is running...
   xiaoming.__proto__ === Student; // true
在编写JavaScript代码时,不要直接用obj.__proto__去改变一个对
象的原型,并且,低版本的IE也无法使用__proto__。
Object.create()方法可以传入一个原型对象,并创建一个基于该原
型的新对象,但是新对象什么属性都没有,因此,我们可以编写一
个函数来创建xiaoming
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值