Boolean 函数

Boolean(expression:Object) : Boolean

expression 参数转换为布尔值,并返回一个下面列表中说明的值:

如果 expression 为字符串,则返回值如下所示:

如果 expression 为字符串,则在该字符串的长度大于 0 时,结果为 true;如果该字符串是空字符串,则值为 false

与 Boolean 类构造函数不同的是,Boolean() 函数不使用关键字 new。此外,如果未指定任何参数,则 Boolean 类构造函数会将 Boolean 对象初始化为 false,而 Boolean() 函数在未指定参数时会返回 undefined

可用性:ActionScript 1.0、Flash Player 5 ― Flash Player 7 中的行为已更改。

参数

expression:Object ― 一个要转换为布尔值的表达式。

返回

Boolean ― 一个布尔值。

示例

trace(Boolean(-1)); // true
trace(Boolean(0)); // false
trace(Boolean(1)); // true


trace(Boolean(true)); // true
trace(Boolean(false)); // false


trace(Boolean("true")); // true
trace(Boolean("false")); // true

trace(Boolean("Craiggers")); // true
trace(Boolean("")); // false

如果文件是为 Flash Player 6 及更低版本发布的,则前面三个示例的结果将会不同:

trace(Boolean("true")); // false
trace(Boolean("false")); // false
trace(Boolean("Craiggers")); // false

此示例演示 Boolean() 函数的使用和 Boolean 类的使用之间的重要区别。Boolean() 函数创建布尔值,而 Boolean 类创建 Boolean 对象。布尔值是按值进行比较的,而 Boolean 对象是按引用进行比较的。

// Variables representing Boolean values are compared by value
var a:Boolean = Boolean("a"); // a is true
var b:Boolean = Boolean(1); // b is true
trace(a==b); // true

// Variables representing Boolean objects are compared by reference
var a:Boolean = new Boolean("a"); // a is true
var b:Boolean = new Boolean(1); // b is true
trace(a == b); // false 

另请参见

Boolean