我怎样才能简单地检查是否返回了 int
类型的值?或 uint
是一个数字吗?
最佳答案
简单的:
if(_myValue is Number)
{
fire();
}// end if
[更新]
请记住,如果
_myValue
类型为 int
或 uint
,然后 (_myValue is Number)
也将等于 true
.如果您想知道是否_myValue
是一个不是整数(int)或无符号整数(uint)的数字,换句话说,一个浮点数,那么你可以简单地修改条件如下:(_myValue is Number && !(_myValue is int) && !(_myValue is uint))
让我们看一个例子:
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
}
}
}
关于flash - 检查值是否为数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5026786/