Tau*_*ayi 13
简单:
if(_myValue is Number)
{
fire();
}// end if
Run Code Online (Sandbox Code Playgroud)
[UPDATE]
请记住,如果_myValue
是类型int
或uint
,那么(_myValue is Number)
也将等同于true
.如果你想知道if _myValue
是一个不是整数(int)或无符号整数(uint)的数字,换句话说是一个浮点数,那么你可以简单地修改条件如下:
(_myValue is Number && !(_myValue is int) && !(_myValue is uint))
Run Code Online (Sandbox Code Playgroud)
我们来看一个例子:
package
{
import flash.display.Sprite;
import flash.events.Event;
public class Main extends Sprite
{
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}
private function init(e:Event = null):void
{
removeEventListener(Event.ADDED_TO_STAGE, init);
var number1:Object = 1; // int
var number2:Object = 1.1; // float
var number3:Object = 0x000000; // uint
trace(number1 is Number); // true
trace(number2 is Number); // true
trace(number3 is Number); // true
trace(number1 is Number && !(number1 is int) && !(number1 is uint)); // false
trace(number2 is Number && !(number2 is int) && !(number2 is uint)); // true
trace(number3 is Number && !(number3 is int) && !(number3 is uint)); // false
}
}
}
Run Code Online (Sandbox Code Playgroud)
如果您只想知道myValue是否是数字类型之一(Number,int,uint),您可以检查是否(_myValue is Number)
为Taurayi建议.
如果你也想知道,如果_myValue是一个数字字符串(如"6320"或"5.987"),使用此:
if (!isNaN(Number(_myValue)))
{
fire();
}
Run Code Online (Sandbox Code Playgroud)
它用于Number(_myValue)
投射_myValue
到Number
课堂.如果Number
无法将其转换为有用的数字,它将返回NaN
,因此我们使用!isNaN()
以确保返回的值不是"不是数字".
它将为类型的任何变量返回true Number
(只要它的值是不是NaN
)int
,uint
以及包含数字的有效表示字符串.
归档时间: |
|
查看次数: |
21695 次 |
最近记录: |