Flex 之顶级常量和函数
? ? 也许有人和我一样学Flex没有系统看过全局的常量和方法,自己再过一次,从帮助文档摘抄出来。全局常量
public const Infinity:Number
正无穷大,表示正? 示例?
除以 0 的结果为?
Infinity (仅当除数为正数时)。
trace(0 / 0); // NaN trace(7 / 0); // Infinity trace(-7 / 0); // -Infinity
public const -Infinity:Number
负无穷大,表示负?
public const NaN:Number
Number 数据类型的一个特殊成员,用来表示“非数字”(
undefined |
public const undefined:*
一个适用于尚未初始化的无类型变量或未初始化的动态对象属性的特殊值。在 ActionScript 3.0 中,只有无类型变量才能采用值?
将?
不要混淆?
在以下示例中,将声明(但不初始化)一个无类型变量?
// trace value of untyped and uninitialized variable var myVar; trace(myVar); // undefined
该规则同样适用于动态对象的未初始化属性。例如,给定实例?
obj (属于动态类?
A ),
obj.propName (
obj ?实例的未初始化属性)的值为?
undefined 。
dynamic class A {} var obj:A = new A() // trace undefined property of obj trace(obj.propName); // undefined
全局方法?
public function Array(...?args):Array
创建一个新数组。可以是长度为 0 或大于 0 的数组,也可以是由一组指定元素(可能具有不同的数据类型)填充的数组。所使用参数的数目和数据类型决定了返回数组的内容。
Array() ?函数类似于使用 Array 类构造函数创建数组。
当参数不是原始值时,应使用? 参数
返回 示例?
下面的示例演示?
Array() ?函数在参数不是原始值时的行为。转换为数组的一种常见用法是转换以数组格式存储值的 Object 实例。如果调用?
Array() ?时使用了?
Object ?类型或其它任何非原始数据类型的参数,则对对象的引用将存储在新数组的元素中。也就是说,如果传递的唯一参数是一个对象,则对该对象的引用将成为新数组的第一个元素。
var obj:Object = [ "a","b","c" ]; var newArray:Array = Array( obj ); trace(newArray == obj); // false trace(newArray[0] == obj); // true trace(newArray[0][0]) // a trace(newArray[0][1]) // b trace(newArray[0][2]) // c
若要将?
obj ?转换为数组,请使用?
as ?运算符,它将在?
obj ?为有效数组的情况下返回数组引用,否则返回?
null :
Boolean |
函数 |
public function Boolean(expression:Object):Boolean
将? 返回值取决于参数的数据类型和值,如下表所述:
与 ActionScript 的早期版本不同,
参数
返回
public function Date():String
返回当前星期值、日期值、时间和时区的字符串表示形式。输出的日期格式为: Day Mon Date HH:MM:SS TZD YYYY
例如: Wed Apr 12 15:30:17 GMT-0700 2006
若要将某个值转换为 Date 类型,请使用?
返回
public function decodeURI(uri:String):String
将已编码的 URI 解码为字符串。返回一个字符串,其中以前由? 下表显示不会?由?
参数 返回
示例?
package { import flash.display.Sprite; public class DecodeURIExample extends Sprite { public function DecodeURIExample() { var uri:String = "http://www.example.com/application.jsp?user=<user name='some user'></user>"; var encoded:String = encodeURI(uri); var decoded:String = decodeURI(encoded); trace(uri); // http://www.example.com/application.jsp?user=<user name='some user'></user> trace(encoded); // http://www.example.com/application.jsp?user=%3Cuser%20name='some%20user'%3E%3C/user%3E trace(decoded); // http://www.example.com/application.jsp?user=<user name='some user'></user> } } } decodeURIComponent
|
? |
public function decodeURIComponent(uri:String):String
将已编码的 URI 组件解码为字符串。返回一个字符串,其中以前由?encodeURIComponent
?函数转义的所有字符都还原为它们的未编码表示形式。
此函数与?decodeURI()
?函数不同,它仅适用于 URI 字符串的一部分(称为 URI 组件)。URI 组件是指出现在某些特殊字符之间的任何文本,这些特殊字符称为组件分隔符?(: / ; and ??
). “http”和“www.adobe.com”是常见的 URI 组件示例。
此函数与?decodeURI()
?的另一个重要区别是:由于此函数假定它处理的是 URI 组件,因此它会将表示特殊分隔符字符 (; / ? : @ & = + $,#
) 的转义序列视为应进行解码的常规文本。
参数
返回
? |
public function encodeURI(uri:String):String
将字符串编码为有效的 URI(统一资源标识符)。将完整的 URI 转换为一个字符串,其中除属于一小组基本字符的字符外,其它所有字符都编码为 UTF-8 转义序列。
下表显示不会?由?encodeURI
?函数转换为 UTF-8 转义序列的基本字符的整个集合。
0 1 2 3 4 5 6 7 8 9
|
a b c d e f g h i j k l m n o p q r s t u v w x y z
|
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
|
; / ? : @ & = + $,#
|
- _ . ! ~ * ' ( )
|
参数
uri:String ?— 一个表示完整 URI 的字符串。 |
返回
示例?
package { import flash.display.Sprite; public class EncodeURIExample extends Sprite { public function EncodeURIExample() { var uri:String = "http://www.example.com/application.jsp?user=<user name='some user'></user>"; var encoded:String = encodeURI(uri); var decoded:String = decodeURI(encoded); trace(uri); // http://www.example.com/application.jsp?user=<user name='some user'></user> trace(encoded); // http://www.example.com/application.jsp?user=%3Cuser%20name='some%20user'%3E%3C/user%3E trace(decoded); // http://www.example.com/application.jsp?user=<user name='some user'></user> } } }
() | 函数 | ? |
public function encodeURIComponent(uri:String):String
将字符串编码为有效的 URI 组件。将 URI 的子字符串转换为以下字符串:除属于非常小的一组基本字符的字符外,其它所有字符都编码为 UTF-8 转义序列。
encodeURIComponent()
?函数与?encodeURI()
?函数不同,它仅适用于 URI 字符串的一部分(称为 URI 组件)。URI 组件是指出现在某些特殊字符之间的任何文本,这些特殊字符称为组件分隔符?(: / ; and ??
). “http”和“www.adobe.com”是常见的 URI 组件示例。
此函数与?encodeURI()
?的另一个重要区别是:由于此函数假定它处理的是 URI 组件,因此它会将特殊分隔符字符 (; / ? : @ & = + $,#
) 视为应进行编码的常规文本。
下表显示不会?由?encodeURIComponent
?函数转换为 UTF-8 转义序列的所有字符。
0 1 2 3 4 5 6 7 8 9
|
a b c d e f g h i j k l m n o p q r s t u v w x y z
|
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
|
- _ . ! ~ * ' ( )
|
参数
uri:String ?— 一个表示完整 URI 的字符串。 |
返回
? |
public function escape(str:String):String
将参数转换为字符串,并以 URL 编码格式对其进行编码,在这种格式中,大多数非字母数字的字符都替换为?%
?十六进制序列。当用于 URL 编码的字符串时,百分号 (%
) 用于引入转义字符,不与模运算符 (%
) 等效。
下表显示不会?由?escape()
?函数转换为转义序列的所有字符。
参数
返回
public function int(value:Number):int
将给定数字值转换成整数值。从小数点处截断十进制值。
参数
返回
public function isFinite(num:Number):Boolean
如果该值为有限数,则返回?true
,如果该值为?Infinity
?或?-Infinity
,则返回?false
。出现的?Infinity
?或?-Infinity
?指示存在错误的数学条件,例如除以 0。
参数
返回
public function isNaN(num:Number):Boolean
如果该值为?NaN
(非数字),则返回?true
。isNaN()
?函数可用于检查一个数学表达式是否成功地计算为一个数字。NaN
?值是 Number 数据类型的特殊成员,用来表示“非数字”值。
注意:NaN
?值不是 int 或 uint 数据类型的成员。
下表描述?isNaN()
?针对各种输入类型和值的返回值。
示例 | 返回值 | |||||||
---|---|---|---|---|---|---|---|---|
0 除以 0 | isNaN(0/0)
|
true
|
||||||
非零数字除以?0
|
isNaN(5/0)
|
false
|
||||||
负数的平方根 | isNaN(Math.sqrt(-1))
|
大于 1 或小于 0 的数字的反正弦值 | isNaN(Math.asin(2))
|
可以转换为 Number 的字符串 | isNaN("5")
|
无法转换为 Number 的字符串 | isNaN("5a")
|
true
|
参数
返回
? |
public function isXMLName(str:String):Boolean
? |
public function Number(expression:Object):Number
将给定值转换成数字值。下表显示各种输入类型的结果:
Number(undefined)
| NaN
|
|||||
---|---|---|---|---|---|---|
Number(null)
|
0
|
|||||
true
|
Number(true)
|
1
|
||||
false
|
Number(false)
|
Number(NaN)
|
Number("")
|
转换为数字的字符串 | Number("5")
|
数字(例如?5 ) |
没有转换为数字的字符串 | Number("5a")
|
NaN
|
参数
返回
? |
public function Object(value:Object):Object
在 ActionScript 3.0 中,每个值都是一个对象,这意味着对某个值调用?Object()
?会返回该值。
参数
返回
public function parseFloat(str:String):Number
将字符串转换为浮点数。此函数读取或分析?并返回字符串中的数字,直到此函数遇到不是初始数字一部分的字符。如果字符串不是以可以分析的数字开头,parseFloat()
?将返回?NaN
。有效整数前面的空白将被忽略,有效整数后面的非数字字符也将被忽略。
参数
返回
public function parseInt(str:String,radix:uint?= 0):Number
将字符串转换为整数。如果参数中指定的字符串不能转换为数字,则此函数返回?NaN
。以 0x 开头的字符串被解释为十六进制数字。与 ActionScript 的早期版本不同,以 0 开头的整数不会被解释为八进制数字。必须指定 8 的基数才能解释为八进制数字。有效整数前面的空白和 0 以及后面的非数字字符将被忽略。
参数
str:String ?— 要转换为整数的字符串。 |
? |
radix:uint ?(default =?0 ) ?— 表示要分析的数字的基数(基)的整数。合法值为 2 到 36。 |
返回
// 16进制的30被转换为10进制的48 trace(parseInt("30",16)); //48
String | () | 函数 | ? |
public function String(expression:Object):String
返回指定参数的字符串表示形式。
下表显示各种输入类型的结果:
输入类型/值 | 返回值 |
---|---|
undefined |
undefined |
null |
"null" |
true |
"true" |
false |
"false" |
NaN |
"NaN" |
String | String |
object | Object.toString() |
Number | 数字的字符串表示形式 |
参数
? |
expression:Object — 要转换为字符串的表达式。 |
? |
String — 为 expression 参数传递的值的字符串表示形式。? |
trace | () | 函数 | ? |
public function trace(... arguments):void
调试时显示表达式或写入日志文件。单个跟踪语句可支持多个参数。如果跟踪语句中的任何参数包含 String 之外的数据类型,则跟踪函数将调用与该数据类型关联的 toString()
方法。例如,如果该参数是一个布尔值,则跟踪函数将调用 Boolean.toString()
并显示返回值。
参数
? |
... arguments — 要计算的一个或多个(逗号分隔)表达式。对于多个表达式,输出中每个表达式之间都将插入一个空格。 |
示例
TraceExample
来演示如何使用
trace()
方法输出简单字符串。通常情况下,消息将输出到“调试”控制台。?
package { import flash.display.Sprite; public class TraceExample extends Sprite { public function TraceExample() { trace("Hello World"); } } }
uint | () | 函数 | ? |
public function uint(value:Number):uint
将给定数字值转换成无符号整数值。从小数点处截断十进制值。
下表描述 uint()
针对各种输入类型和值的返回值。
输入类型/值 | 示例 | 返回值 |
---|---|---|
undefined |
uint(undefined) |
0 |
null |
uint(null) |
0 |
0 |
uint(0) |
0 |
NaN |
uint(NaN) |
0 |
正浮点数 | uint(5.31) |
截断的无符号整数(例如,5 ) |
负浮点数 | uint(-5.78) |
截断为整数,然后应用负整数规则 |
负整数 | uint(-5) |
uint.MAX_VALUE 与负整数的和(例如,uint.MAX_VALUE + (-5) ) |
true |
uint(true) |
1 |
false |
uint(false) |
0 |
空字符串 | uint("") |
0 |
转换为数字的字符串 | uint("5") |
数字 |
没有转换为数字的字符串 | uint("5a") |
0 |
参数
? |
value:Number — 要转换成整数的值。 |
? |
uint — 转换后的整数值。 ? |
trace(uint(-5)); //4294967291 trace(uint({})); //0
public function unescape(str:String):String
将参数?str
?作为字符串计算,从 URL 编码格式解码该字符串(将所有十六进制序列转换成 ASCII 字符),并返回该字符串。
参数
返回
public function XML(expression:Object):XML
将对象转换成 XML 对象。
下表介绍各种输入类型的返回值。
Boolean | 首先将值转换成一个字符串,然后转换成一个 XML 对象。 | |
---|---|---|
Null | 发生运行时错误(TypeError 异常)。 | |
Number | object | 仅当值为字符串值、数值或布尔值时才转换为 XML。否则会发生运行时错误(TypeError 异常)。 |
String | 转换为 XML 的值。 | |
未定义 | XML | 返回未修改的输入值。 |
XMLList | 仅当 XMLList 对象只包含 XML 类型的某个属性时才返回 XML 对象。否则会发生运行时错误(TypeError 异常)。 |
参数
返回
public function XMLList(expression:Object):XMLList
将某对象转换成 XMLList 对象。
下表介绍各种输入类型的返回值。
仅当值为字符串值、数值或布尔值时才转换为 XMLList。否则会发生运行时错误(TypeError 异常)。 |
将值转换成一个 XMLList 对象。 |
返回未修改的输入值。 |
参数
返回
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!