如何才能简单地检查int
或uint
类型的返回值是否是数字?检查值是否为数字
Q
检查值是否为数字
10
A
回答
13
简单:
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
}
}
}
3
4
这些方法可能有问题一个文本字段,它总是一个字符串。如果你有一个字符串“123”,检查“123”是数字,你会得到一个错误。所以Number(“123”)会真实,但是Number(“lalala”)也是如此(事件虽然结果是NaN,它会告诉你NaN是Number(true)。
要使用字符串,你可以这样做:
var s:String = "1234";
String(Number(s)) == String(s);
--True
var s:String = "lalala";
String(Number(s)) == String(s);
--False
5
如果你只是想知道,如果myvalue的是数值类型(数,INT,UINT)中的一个,您可以检查是否(_myValue is Number)
作为Taurayi建议
如果也。想知道_myValue是否为数字字符串(如 “6320” 或 “5.987”),使用此:
if (!isNaN(Number(_myValue)))
{
fire();
}
它使用Number(_myValue)
投_myValue
到Number
类。如果Number
无法将其转换为有用的数字,它将返回NaN
,因此我们使用!isNaN()
来确保返回的值不是“不是数字”。
(作为它的值是不NaN
只要)它将返回true为Number
类型的任何变量,int
,uint
,和包含许多的有效表示字符串。
相关问题
- 1. Lua检查数值/值是否为
- 2. 检查double值是否为整数Swift
- 3. 检查值是否为10的倍数
- 4. 检查数组值是否为空
- 5. 检查值是否为整数(Objective-C)
- 6. 检查参数是否为字符串
- 7. 检查输入是否为数字C
- 8. 检查用户输入的单个数值是否为数字
- 9. 检查是否数字
- 10. 在sql视图中检查值是否为数字
- 11. 如何检查值是否为数字在SSRS
- 12. 如何检查输入的值是否为数字?
- 13. 如何检查js.Any值是否为ScalaJS中的数字
- 14. 使用JS检查查询字符串是否为空值
- 15. 检查字段值是否存在?
- 16. 检查是否存在,是否存在,是否为某个值
- 17. 检查字符串变量是否为某个字符串值
- 18. 如何检查ID是否是数字?
- 19. 检查变量是否是数字
- 20. 检查字符串是否是实数
- 21. 检查值select2是否为空
- 22. 检查是否美丽soup.find_all值为空
- 23. 检查是否GET值为null
- 24. 检查$ _POST-值是否为空
- 25. FreeMarker:检查地图值是否为空
- 26. 如何检查值是否为1.#INF0000?
- 27. 检查是否为datetimepicker输入值?
- 28. 检查是否JSON值为空
- 29. 检查列值是否为Numeric。 SSIS
- 30. Java检查布尔值是否为空
即使_myValue被键入为int或uint,“_myValue是Number”仍然是true,typeof(_myValue)仍然是“number”。根据http:// stackoverflow。闪存将整数值存储为整数,如果数值中包含小数部分,或者它超过0x0FFFFFFF(可存储在32位原子的其余28位中的最大值),则存储为“数值”为类型描述保留3位,为符号保留1位)。另请参阅http://stackoverflow.com/a/2697151/88409和此处的测试用例:http://troyworks.com/blog/2007/12/02/as3-understanding-uint-int-number/ – Triynko 2012-08-14 17:26:24
提问者希望知道_myValue是一个数字,而不是一个数字。 – Robert 2012-11-15 22:25:05