在JavaScript ES6中破坏对象的功能

时间:2019-06-29 22:32:45

标签: javascript ecmascript-6

@if ( Auth::guard("employee")->check() )
  <p>welcome {{Auth::user()->name}} !<p>
@endif

我得到半径值和颜色,但是当我调用getArea(1)或getArea(5)时得到NaN,如何使函数起作用?

预计将获得314.15

1 个答案:

答案 0 :(得分:2)

对于普通函数,this的值由调用函数的方式确定。如果您致电:

circle.getArea()

然后说要使用等于this的{​​{1}}调用getArea函数。相反,如果您有一个独立的函数并调用

circle

然后您没有告诉getArea() 应该等于什么,因此它默认为window对象(在非严格模式下)或undefined(在严格模式下)。取而代之的是,要么先调用它,要么使用call / apply显式设置this的值

this

或创建该函数的绑定副本。

getArea.call(circle)