javaScript11-方法
定义方法
- 
方法就是把函数放在对象的里面 
- 
对象只有两个东西:属性和方法 
<script>
  var kaka={
    name: 'kaka',
    birth: 2020,
    age: function(){
      let now_year=new Date().getFullYear();
      return now_year-this.birth;     
    }
  };
//属性:kaka.name
//方法:kaka.age() 记得带括号
</script>

把上面的代码拆开如下
<script>
  var getAge=function(){
    let now_year=new Date().getFullYear();
    return now_year-this.birth;
  }
  var kaka={
    name: 'kaka',
    birth: 2020,
    age: getAge
  };
  
  //kaka.age()注意此处任然要加括号
</script>
this是无法指向的,是指默认调用他的哪个对象
apply函数
在JS中可以控制this的指向
<script>
  var getAge=function(){
    let now_year=new Date().getFullYear();
    return now_year-this.birth;
  }
  var kaka={
    name: 'kaka',
    birth: 2020,
    age: getAge
  };
  getAge.apply(kaka,[]);
  //apply第一个参数为指向的对象,第二个参数为getAge函数的参数,此处getAge()没有参数,故[]代表空参
</script>

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号