2011-11-05 106 views
0

我是AS3的新手。我正在網上閱讀一段代碼,以幫助我開展一個我正在工作的項目,並對其提出了一個快速的問題。這段代碼是什麼意思?

public class MyClass extends Random { 

      public var center:Number; 

      public var radius:Number; 

      public function MyClass(center:Number = 0.5, radius:Number = 0) { 
        this.center = center; 
        this.radius = radius; 
      } 

      override public final function random():Number { 
        if (radius) return radius * 2 * (Math.random() - 0.5) + center; 
        else return center; 
      } 
} 

我不明白if(radius)會評估什麼。有任何想法嗎?

+0

順便說一句,正確的檢查應該可能是如果(!isNaN(radius)) – catholicon

回答

1

if(radius):半徑爲零的值評估爲false;所有其他值評估爲true

+0

我明白了。感謝您解決問題。 – ababzy

0

或換句話說...

如果半徑爲真或具有值。

而...

if (!radius) 

可以理解爲,如果半徑爲假的或沒有價值。

+0

在'null'中沒有值嗎?還是沒有價值,如零值? – ababzy