Operadores simbólicos são caracteres que especificam como combinar, comparar ou modificar os valores de uma expressão.
aritmético | |||
---|---|---|---|
+ | addition | ||
-- | decrement | ||
/ | division | expression1 por expression2 . | |
++ | increment | ||
% | modulo | expression1 dividido por expression2 . | |
* | multiplication | ||
- | subtraction | ||
atribuição | |||
= | assignment | expression2 (o operando à direita) à variável, ao elemento de matriz ou à propriedade em expression1 . | |
atribuição composta aritmética | |||
+= | addition assignment | expression1 o valor de expression1 + expression2 . | |
/= | division assignment | expression1 o valor de expression1 / expression2 . | |
%= | modulo assignment | expression1 o valor de expression1 % expression2 . | |
*= | multiplication assignment | expression1 o valor de expression1 / expression2 . | |
-= | subtraction assignment | expression1 o valor de expression1 -expression2 . | |
atribuição composta em nível de bits | |||
&= | bitwise AND assignment | expression1 o valor de
expression1 / expression2 . | |
<<= | bitwise left shift and assignment | <<= ) e armazena o conteúdo como um resultado em expression1 . | |
|= | bitwise OR assignment | expression1 o valor de expression1 | expression2 . | |
>>= | bitwise right shift and assignment | expression . | |
>>>= | bitwise unsigned right shift and assignment | expression . | |
^= | bitwise XOR assignment | expression1 o valor de expression1 / expression2 . | |
bit a bit | |||
& | bitwise AND | expression1 e expression2 em números inteiros sem sinal de 32 bits e realiza uma operação AND booliana em cada bit de parâmetros de números inteiros. | |
<< | bitwise left shift | expression1 e shiftCount em números inteiros de 32 bits e desloca todos os bits em expression1 para a esquerda pela quantidade de casas decimais especificadas pelo número inteiro resultante da conversão de shiftCount . | |
~ | bitwise NOT | expression para um número inteiro assinado de 32 bits e, em seguida, aplica um complemento de um, bit a bit. | |
| | bitwise OR | expression1 e expression2 em números inteiros de 32 bits sem sinal, e coloca um 1 em cada posição, onde os bits correspondentes em expression1 ou expression2 são 1. | |
>> | bitwise right shift | expression e shiftCount em números inteiros de 32 bits, e desloca todos os bits em expression para a direita pela quantidade de casas decimais especificadas pelo número inteiro resultante da conversão de shiftCount . | |
>>> | bitwise unsigned right shift | >> ), exceto que ele não preserva o sinal da expressão original, porque os bits à esquerda são sempre preenchidos com 0. | |
^ | bitwise XOR | expression1 e expression2 em números inteiros sem sinal de 32 bits e coloca um algarismo 1 em cada posição, onde os bits correspondentes em expression1 ou expression2 , mas não em ambas, são 1. | |
comentário | |||
/*..*/ | block comment delimiter | ||
// | line comment delimiter | ||
comparação | |||
== | equality | ||
> | greater than | expression1 é maior do que expression2 ; se for, o resultado será true . | |
>= | greater than or equal to | expression1 é maior ou igual a expression2 é (true ) ou se expression1 é menor que expression2 é ( false ). | |
!= | inequality | == ). | |
< | less than | expression1 é menor do que expression2 ; se for, o resultado será true . | |
<= | less than or equal to | expression1 é menor do que ou igual a expression2 ; se for, o resultado será true . | |
=== | strict equality | ||
!== | strict inequality | === ). | |
lógico | |||
&& | logical AND | expression1 , se for false ou passível de conversão em false ; caso contrário, retorna expression2 . | |
&&= | logical AND assignment | expression1 o valor de expression1 && expression2 . | |
! | logical NOT | ||
|| | logical OR | expression1 , se for false ou passível de conversão em false ; caso contrário, retorna expression2 . | |
||= | logical OR assignment | expression1 o valor de expression1 || expression2 . | |
outro | |||
[] | array access | a0 , etc.), ou acessa elementos em uma matriz. | |
as | |||
, | comma | expression1 , em seguida, expression2 e assim por diante. | |
?: | conditional | expression1 . Se o valor de expression1 for true , o resultado será o valor de expression2 ; caso contrário, o resultado será o valor de expression3 . | |
delete | reference ; o resultado será true se a propriedade não existir depois da conclusão da operação; caso contrário, será false . | ||
. | dot | ||
in | |||
instanceof | function . | ||
is | |||
:: | name qualifier | ||
new | |||
{} | object initializer | name e value . | |
() | parentheses | ||
/ | RegExp delimiter | ||
: | type | ||
typeof | expression e retorna uma string especificando o tipo de dados da expressão. | ||
void | undefined . | ||
Sequência de caracteres | |||
+ | concatenation | ||
+= | concatenation assignment | expression1 o valor de expression1 + expression2 . | |
" | string delimiter | ||
XML | |||
@ | attribute identifier | ||
{ } | braces (XML) | ||
[ ] | brackets (XML) | ||
+ | concatenation (XMLList) | ||
+= | concatenation assignment (XMLList) | expression1 , que é um objeto XMLList, o valor de expression1 + expression2 . | |
delete (XML) | reference . | ||
.. | descendant accessor | ||
. | dot (XML) | ||
( ) | parentheses (XML) | ||
< > | XML literal tag delimiter |
+ addition | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Adiciona expressões numéricas. Se ambas as expressões são números inteiros, a soma é um número inteiro; se qualquer uma das expressões ou ambas são números de ponto flutuante, a soma é um número de ponto flutuante.
Se uma expressão é uma string, todas as outras expressões são convertidas em strings e concatenadas, em vez de somadas. Caso contrário, se uma expressão não for um número, o Flash ® Player a converterá em um número.
Operandosexpression1:Number —
Um valor a ser adicionado.
| |
expression2:Number —
Um valor a ser adicionado.
|
Number —
Um número inteiro ou um número decimal.
|
Exemplo
Como usar este exemplo
Essa instrução adiciona os números inteiros 2 e 3:
trace(2 + 3); // 5
trace(2.5 + 3.25); // 5.75
trace("Number " + 8 + 0); // Number 80
deposit
é um campo de texto de entrada no Palco. Depois que um usuário insere uma quantia em depósito, o script tenta adicionar deposit
a oldBalance
. No entanto, como deposit
é do tipo String, o script concatena (combina para formar uma string) os valores de variáveis, em vez de somá-los.
var oldBalance:Number = 1345.23; var currentBalance = deposit_txt.text + oldBalance; trace(currentBalance);
trace()
envia o valor 4751345,23 ao painel Saída. Para corrigir isso, use a função Number()
para converter a string para um número, como mostrado em seguida:
var oldBalance:Number = 1345.23; var currentBalance:Number = Number(deposit_txt.text) + oldBalance; trace(currentBalance);
Elementos da API relacionados
+= addition assignment | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Atribui a expression1
o valor de expression1 + expression2
. Por exemplo, as duas instruções a seguir têm o mesmo resultado:
x += y; x = x + y;Todas as regras do operador de adição (+) se aplicam ao operador de atribuição de adição (
+=
).
Operandosexpression1:Number —
Um número.
| |
expression2:Number —
Um número.
|
Number —
O resultado da adição.
|
Exemplo
Como usar este exemplo
O exemplo a seguir mostra um uso numérico do operador de atribuição de adição (
+=
):
var x:Number = 5; var y:Number = 10; x += y; trace(x); // 15
Elementos da API relacionados
[] array access | Operador |
|
Versões de runtime: | Flash Player 9 |
Inicializa uma nova matriz ou matriz multidimensional com elementos específicos ( a0
, etc.), ou acessa elementos em uma matriz. O operador de acesso à matriz permite definir e recuperar dinamicamente os nomes de ocorrência, variável e objeto. Permite também acessar as propriedades dos objetos.
Uso 1: matriz é um objeto com propriedades chamadas elementos, que são identificados individualmente por um número denominado índice. Ao criar uma matriz, você envolve os elementos com o operador (ou colchetes) de acesso ([]) à matriz. Uma matriz pode conter elementos de vários tipos. Por exemplo, a matriz a seguir, denominada employee
, tem três elementos; o primeiro é um número e os dois elementos seguintes são strings (entre aspas):
var employee:Array = [15, "Barbara", "Jay"];
ticTacToe
com três elementos; cada elemento é também uma matriz com três elementos. var ticTacToe:Array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]; /* Select Debug > List Variables in test mode to see a list of the array elements.*/
var my_array:Array = new Array(); my_array[0] = 15; my_array[1] = "Hello"; my_array[2] = true;
my_array[3] = "George";
trace()
a seguir localiza o terceiro elemento (índice 2) da segunda matriz (índice 1).
var ticTacToe:Array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]; trace(ticTacToe[1][2]); // 6
var obj:Object = new Object(); obj.prop1 = "foo"; trace(obj["prop" + 1]); // foo obj.prop2 = "bar"; for (j in obj) { trace(obj[j]); } /* Output of for loop: foo bar */
myArray:Object —
O nome de uma matriz.
| |
a0, a1,...aN:Object —
Elementos em uma matriz; qualquer tipo nativo ou ocorrência de objeto, incluindo matrizes aninhadas.
| |
i:Number —
Um índice de número inteiro maior ou igual a 0.
| |
myObject:Object —
O nome de um objeto.
| |
propertyName:String —
Uma string que nomeia uma propriedade do objeto.
|
Object —
Uso 1: uma referência a uma matriz. Uso 2: um valor da matriz; um tipo nativo ou uma ocorrência de objeto (incluindo uma ocorrência Matriz). Uso 3: uma propriedade do objeto; um tipo nativo ou uma ocorrência de objeto (incluindo uma ocorrência Matriz). |
Exemplo
Como usar este exemplo
O exemplo a seguir mostra duas maneiras de criar um novo objeto Matriz em branco; a primeira linha usa colchetes:
var my_array:Array = []; var my_array:Array = new Array();
O exemplo a seguir cria uma matriz denominada employee_array
com três elementos, e altera o terceiro elemento na matriz.
var employee_array = ["Barbara", "George", "Mary"]; trace(employee_array); // Barbara,George,Mary employee_array[2] = "Sam"; trace(employee_array); // Barbara,George,Sam
obj
:
var obj:Object = new Object(); obj.prop1 = "foo"; obj.prop2 = "bar"; for (var i:int = 1;i < 3;i++) { trace(obj["prop"+i]); } /* Output of for loop: foo bar */
Elementos da API relacionados
as | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Avalia se uma expressão especificada pelo primeiro operando é um membro do tipo de dados especificado pelo segundo operando. Se for, o resultado será o primeiro operando. Caso contrário, o resultado é o valor null
.
A expressão usada para o segundo operando deve ser avaliada como um tipo de dados.
Operandosexpression:* —
O valor a ser verificado em relação ao tipo de dados especificado.
| |
datatype:Class —
O tipo de dados usado para avaliar o operando expression . O tipo * especial, que significa sem tipo, não pode ser usado.
|
Object —
O resultado é expression quando expression é um membro do tipo de dados especificado em datatype . Caso contrário, o resultado é o valor null .
|
Exemplo
Como usar este exemplo
O exemplo a seguir cria uma matriz simples denominada
myArray
e utiliza o operador as
com vários tipos de dados.
public var myArray:Array = ["one", "two", "three"]; trace(myArray as Array); // one,two,three trace(myArray as Number); // null trace(myArray as int); // null
Elementos da API relacionados
= assignment | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Atribui o valor de expression2
(o operando à direita) à variável, ao elemento de matriz ou à propriedade em expression1
. A atribuição pode ser por valor ou por referência. A atribuição por valor copia o valor real de expression2
e o armazena em expression1
. A atribuição por valor é usada quando expression2
é um valor primitivo, o que significa que seu tipo de dados é Boolean, Number, int, uint ou String. A atribuição por referência armazena uma referência a expression2
em expression1
. A atribuição por referência é frequentemente utilizada com o operador new
. O operador new
cria um objeto na memória, e a referência a esse local na memória é atribuída a uma variável.
Nota:no ActionScript 3.0, todos os valores (incluindo valores primitivos) são objetos, e toda a atribuição é feita por referência. No entanto, os objetos primitivos têm operadores especiais, que permitem que os objetos se comportem como se fossem atribuídos por valor.
Operandosexpression1:* —
Uma variável, um elemento de uma matriz ou uma propriedade de um objeto.
| |
expression2:* —
Um valor de qualquer tipo.
|
Object —
O valor atribuído, expression2 .
|
Exemplo
Como usar este exemplo
O exemplo a seguir utiliza a atribuição por valor para atribuir o valor de 5 à variável
z
.
var z:Number = 5;
hello
" à variável z
:
var x:String; x = "hello";
moonsOfJupiter
, que contém uma referência a um objeto Matriz recém-criado. Em seguida, a atribuição por valor é utilizada para copiar o valor "Callisto" ao primeiro elemento da matriz referenciada pela variável moonsOfJupiter
:
var moonsOfJupiter:Array = new Array(); moonsOfJupiter[0] = "Callisto";
mercury
. Em seguida, é utilizada a atribuição por valor, para atribuir o valor 3030 à propriedade diameter
do objeto mercury
:
var mercury:Object = new Object(); mercury.diameter = 3030; // in miles trace(mercury.diameter); // 3030
merkur
(a palavra em alemão para mercúrio ) e atribuindo a essa variável o valor de mercury
. Isso cria duas variáveis que fazem referência ao mesmo objeto na memória, o que significa que é possível utilizar qualquer uma das variáveis para acessar as propriedades do objeto. É possível alterar a propriedade diameter
para utilizar quilômetros, em vez de milhas:
var merkur:Object = mercury; merkur.diameter = 4878; // in kilometers trace(mercury.diameter); // 4878
Elementos da API relacionados
@ attribute identifier | Operador |
myXML.@attributeName |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Identifica atributos de um objeto XML ou XMLList. Por exemplo, myXML.@id
identifica atributos nomeados como id
para o objeto XML myXML
. Você também pode usar a seguinte sintaxe para acessar atributos: myXML.attribute("id")
, myXML["@id"]
, e myXML.@["id"]
. A sintaxe myXML.@id
é recomendada. Para retornar um objeto XMLList de todos os nomes de atributos, use @*
. Para retornar um atributo com um nome que corresponda a uma palavra reservada do ActionScript, use o método attribute()
, em vez do operador @
.
attributeName:* —
O nome do atributo.
|
Exemplo
Como usar este exemplo
O primeiro exemplo mostra como usar o operador
@
(sinal de arroba) para identificar um atributo de um elemento:
var myXML:XML = <item id = "42"> <catalogName>Presta tube</catalogName> <price>3.99</price> </item>; trace(myXML.@id); // 42
var xml:XML =<example id='123' color='blue'/> var xml2:XMLList = xml.@*; trace(xml2 is XMLList); // true trace(xml2.length()); // 2 for (var i:int = 0; i < xml2.length(); i++) { trace(typeof(xml2[i])); // xml trace(xml2[i].nodeKind()); // attribute trace(xml2[i].name()); // id and color }
xml.@class
(uma vez que class
é uma palavra reservada no ActionScript). É necessário usar a sintaxe xml.attribute("class")
:
var xml:XML = <example class='123'/> trace(xml.attribute("class"));
Elementos da API relacionados
& bitwise AND | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Converte expression1
e expression2
em números inteiros sem sinal de 32 bits e realiza uma operação AND booliana em cada bit de parâmetros de números inteiros. Números de pontos flutuantes são convertidos em números inteiros descartando-se quaisquer dígitos após o separador decimal. O resultado é um número inteiro assinado de 32 bits.
Um número inteiro positivo é convertido em um valor hexadecimal sem sinal, com um valor máximo de 4294967295 ou 0xFFFFFFFF. Na conversão de valores maiores, serão descartados os dígitos mais significativos, de forma que o valor convertido ainda seja de 32 bits. Um número negativo é convertido em um valor hexadecimal sem sinal, usando a notação de complemento de dois, com um valor mínimo de -2147483648 ou 0x800000000. Um número menor será convertido para o complemento de dois com precisão maior, antes que os dígitos mais significativos sejam descartados.
O resultado é interpretado como um número de complemento de dois de 32 bits, portanto, o resultado é um número inteiro no intervalo de -2147483648 a 2147483647.
Operandosexpression1:Number —
Um número ou uma expressão que resulta em um número.
| |
expression2:Number —
Um número ou uma expressão que resulta em um número.
|
int —
O resultado da operação bit a bit.
|
Exemplo
Como usar este exemplo
O exemplo a seguir realiza um AND bit a bit de 13 (1101 binário) e 11 (1011 binário) comparando as representações de bits dos números. O número inteiro resultando é composta de uma string de bits, cada um deles é um conjunto de 1, apenas se os bits de ambos os operandos na mesma posição forem 1.
var insert:Number = 13; var update:Number = 11; trace(insert & update); // 9 (or 1001 binary)
1101 & 1011 ---- 1001
Os exemplos a seguir mostram o comportamento da conversão de valores de retorno:
trace(0xFFFFFFFF); // 4294967295 trace(0xFFFFFFFF & 0xFFFFFFFF); // -1 trace(0xFFFFFFFF & -1); // -1 trace(4294967295 & -1); // -1 trace(4294967295 & 4294967295); // -1
Elementos da API relacionados
&= bitwise AND assignment | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Atribui a expression1
o valor de expression1 / expression2
. Por exemplo, as duas expressões a seguir são equivalentes:
x &= y; x = x & y;Operandos
expression1:Number —
Um número ou uma expressão que resulta em um número.
| |
expression2:Number —
Um número ou uma expressão que resulta em um número.
|
int —
O valor de expression1 & expression2 .
|
Exemplo
Como usar este exemplo
O exemplo a seguir atribui o valor 9 como
x
:
var x:Number = 15; var y:Number = 9; trace(x &= y); // 9
Elementos da API relacionados
<< bitwise left shift | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Converte expression1
e shiftCount
em números inteiros de 32 bits e desloca todos os bits em expression1
para a esquerda pela quantidade de casas decimais especificadas pelo número inteiro resultante da conversão de shiftCount
. As posições de bits que são esvaziadas como resultado dessa operação são preenchidas com 0, e os bits deslocados da extremidade esquerda são descartados. Deslocar um valor para a esquerda em uma posição é equivalente a multiplicá-lo por 2.
Um número de ponto flutuante é convertido em um número inteiro, descartando os dígitos após o ponto decimal. Um número inteiro positivo é convertido em um valor hexadecimal sem sinal, com um valor máximo de 4294967295 ou 0xFFFFFFFF. Na conversão de valores maiores, serão descartados os dígitos mais significativos, de forma que o valor convertido ainda seja de 32 bits. Um número negativo é convertido em um valor hexadecimal sem sinal, usando a notação de complemento de dois, com um valor mínimo de -2147483648 ou 0x800000000. Um número menor será convertido para o complemento de dois com precisão maior, antes que os dígitos mais significativos sejam descartados.
O resultado é interpretado como um número de complemento de dois de 32 bits, portanto, o resultado é um número inteiro no intervalo de -2147483648 a 2147483647.
Se o resultado é um número inteiro negativo, ocorre um erro de tempo de execução, se você tentar atribuir o resultado a uma variável do tipo uint
. Embora o ActionScript não tenha operadores de "deslocamento à esquerda bit a bit sem sinal", é possível obter o mesmo efeito e evitar o erro de tempo de execução, usando uint(expression1 << shiftCount)
:
var num1:uint = 0xFF; var num2:uint = uint(num1 << 24); // uint() prevents runtime error
expression1:Number —
Um número ou uma expressão a ser deslocada para a esquerda.
| |
shiftCount:Number —
Um número ou uma expressão que é convertida em um número inteiro de 0 a 31.
|
int —
O resultado da operação bit a bit.
|
Exemplo
Como usar este exemplo
No exemplo a seguir, o número inteiro 1 é deslocado 10 bits para a esquerda:
x = 1 << 10
00000000001 binary << 10 decimal -------------- 10000000000 binary equals 1024 decimal
No exemplo a seguir, o número inteiro 7 é deslocado 8 bits para a esquerda:
x = 7 << 8
00000000111 binary << 8 decimal -------------- 11100000000 binary equals 1792 decimal
A instrução trace
a seguir mostra que os bits que foram empurrados três posições para a esquerda:
// 1 binary == 0001 // 8 binary == 1000 trace(1 << 3); // 8
Elementos da API relacionados
<<= bitwise left shift and assignment | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Realiza uma operação de deslocamento bit a bit para a esquerda ( <<=
) e armazena o conteúdo como um resultado em expression1
. As duas expressões a seguir são equivalentes:
A <<= B A = (A << B)Operandos
expression1:Number —
Um número ou uma expressão a ser deslocada para a esquerda.
| |
expression2:Number —
Um número ou uma expressão que é convertida em um número inteiro de 0 a 31.
|
int —
O resultado da operação bit a bit.
|
Exemplo
Como usar este exemplo
O exemplo a seguir usa o deslocamento bit a bit para a esquerda e o operador de atribuição de ( <<=) para deslocar todos os bits uma posição para a esquerda:
var x:Number = 4; // Shift all bits one slot to the left. x <<= 1; trace(x); // 8 // 4 decimal = 0100 binary // 8 decimal = 1000 binary
Elementos da API relacionados
~ bitwise NOT | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Converte expression
para um número inteiro assinado de 32 bits e, em seguida, aplica um complemento de um, bit a bit. Isso significa que cada bit que é 0 é definido como 1 no resultado, e cada bit que é 1 é definido como 0 no resultado. O resultado é um número inteiro assinado de 32 bits. Este operador também é conhecido como o operador do complemento de 1 ou o operador do complemento bit a bit.
Por exemplo, o valor hexadecimal 0x7777 é representado como este número binário:
0111011101110111
A negação bit a bit deste valor hexadecimal, ~0x7777, é um número binário:
1000100010001000
Em hexadecimal, isso é 0x8888. Portanto, ~0x7777 é 0x8888.
O uso mais comum dos operadores bit a bit é para representar bits de sinalizadores (valores Boolianos compactados em 1 bit cada um).
Um número de ponto flutuante é convertido em um número inteiro, descartando os dígitos após o ponto decimal. Um número inteiro positivo é convertido em um valor hexadecimal sem sinal, com um valor máximo de 4294967295 ou 0xFFFFFFFF. Na conversão de valores maiores, serão descartados os dígitos mais significativos, de forma que o valor convertido ainda seja de 32 bits. Um número negativo é convertido em um valor hexadecimal sem sinal, usando a notação de complemento de dois, com um valor mínimo de -2147483648 ou 0x800000000. Um número menor será convertido para o complemento de dois com precisão maior, antes que os dígitos mais significativos sejam descartados.
O resultado é interpretado como um número de complemento de dois de 32 bits, portanto, o resultado é um número inteiro no intervalo de -2147483648 a 2147483647.
Operandosexpression:Number —
Um número a ser convertido.
|
int —
O resultado da operação bit a bit.
|
Exemplo
Como usar este exemplo
O exemplo a seguir demonstra um uso do operador NOT (
~
) bit a bit, com bits de sinalizador:
var ReadOnlyFlag:int = 0x0001; // defines bit 0 as the read-only flag var flags:int = 0; trace(flags); /* To set the read-only flag in the flags variable, the following code uses the bitwise OR: */ flags |= ReadOnlyFlag; trace(flags); /* To clear the read-only flag in the flags variable, first construct a mask by using bitwise NOT on ReadOnlyFlag. In the mask, every bit is a 1 except for the read-only flag. Then, use bitwise AND with the mask to clear the read-only flag. The following code constructs the mask and performs the bitwise AND: */ flags &= ~ReadOnlyFlag; trace(flags); // 0 1 0
Elementos da API relacionados
| bitwise OR | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Converte expression1
e expression2
em números inteiros de 32 bits sem sinal, e coloca um algarismo 1 em cada posição, onde os bits correspondentes em expression1
ou expression2
são 1.
Um número de ponto flutuante é convertido em um número inteiro, descartando os dígitos após o ponto decimal. Um número inteiro positivo é convertido em um valor hexadecimal sem sinal, com um valor máximo de 4294967295 ou 0xFFFFFFFF. Na conversão de valores maiores, serão descartados os dígitos mais significativos, de forma que o valor convertido ainda seja de 32 bits. Um número negativo é convertido em um valor hexadecimal sem sinal, usando a notação de complemento de dois, com um valor mínimo de -2147483648 ou 0x800000000. Um número menor será convertido para o complemento de dois com precisão maior, antes que os dígitos mais significativos sejam descartados.
O resultado é interpretado como um número de complemento de dois de 32 bits, portanto, o resultado é um número inteiro no intervalo de -2147483648 a 2147483647.
Operandosexpression1:Number —
Um número.
| |
expression2:Number —
Um número.
|
int —
O resultado da operação bit a bit.
|
Exemplo
Como usar este exemplo
A seguir, há um exemplo de uma operação OR (
|
) bit a bit: // 15 decimal = 1111 binary var a:Number = 15; // 9 decimal = 1001 binary var b:Number = 9; // 1111 | 1001 = 1111 trace(a | b); // returns 15 decimal (1111 binary)
|
único (OR bit a bit) com ||
(OR lógico).
Elementos da API relacionados
|= bitwise OR assignment | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Atribui a expression1
o valor de expression1 | expression2
. Por exemplo, as duas instruções a seguir são equivalentes:
x |= y; x = x | y;Operandos
expression1:Number —
Um número a ser convertido.
| |
expression2:Number —
Um número a ser convertido.
|
int —
O resultado da operação bit a bit.
|
Exemplo
Como usar este exemplo
O exemplo a seguir utiliza o operador de atribuição OR (
|=
) bit a bit: // 15 decimal = 1111 binary var a:Number = 15; // 9 decimal = 1001 binary var b:Number = 9; // 1111 |= 1001 = 1111 trace(a |= b); // returns 15 decimal (1111 binary)
Elementos da API relacionados
>> bitwise right shift | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Converte expression
e shiftCount
em números inteiros de 32 bits, e desloca todos os bits em expression
para a direita pela quantidade de casas decimais especificadas pelo número inteiro resultante da conversão de shiftCount
. Os bits que forem deslocados da extremidade direita serão. Para preservar o sinal da expressão original, os bits à esquerda são preenchidos com 0, se o bit mais significativo (o bit mais à esquerda) de expression
for 0, e são preenchidos com 1, se o bit mais significativo for 1. Deslocar o valor para a direita em uma posição equivale a dividi-lo por 2 e descartar o restante.
Um número de ponto flutuante é convertido em um número inteiro, descartando os dígitos após o ponto decimal. Um número inteiro positivo é convertido em um valor hexadecimal sem sinal, com um valor máximo de 4294967295 ou 0xFFFFFFFF. Na conversão de valores maiores, serão descartados os dígitos mais significativos, de forma que o valor convertido ainda seja de 32 bits. Um número negativo é convertido em um valor hexadecimal sem sinal, usando a notação de complemento de dois, com um valor mínimo de -2147483648 ou 0x800000000. Um número menor será convertido para o complemento de dois com precisão maior, antes que os dígitos mais significativos sejam descartados.
O resultado é interpretado como um número de complemento de dois de 32 bits, portanto, o resultado é um número inteiro no intervalo de -2147483648 a 2147483647.
Operandosexpression:Number —
Um número ou uma expressão a ser deslocada para a direita.
| |
shiftCount:Number —
Um número ou uma expressão que é convertida em um número inteiro de 0 a 31.
|
int —
O resultado da operação bit a bit.
|
Exemplo
Como usar este exemplo
O exemplo a seguir converte 65535 em um número inteiro de 32 bits e o desloca 8 bits para a direita, resultando em um valor de 255:
var a:Number = 65535 >> 8; trace(a); // 255
00000000000000001111111111111111 binary (65535 decimal) >> 8 decimal -------------------- 00000000000000000000000011111111 binary (255 decimal)O exemplo a seguir converte -8 em um número inteiro de 32 bits e o desloca 1 bit para a direita, resultando em um valor decimal de -4:
var a:Number = -8 >> 1; trace(a); // -4
11111111111111111111111111111000 binary (-8 decimal) >> 1 decimal -------------------- 11111111111111111111111111111100 binary (-4 decimal)
Elementos da API relacionados
>>= bitwise right shift and assignment | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Realiza uma operação de deslocamento para a direita bit a bit e armazena o resultado em expression
.
As duas instruções a seguir são equivalentes:
A >>= B; A = (A >> B);Operandos
expression:Number —
Um número ou uma expressão a ser deslocada para a direita.
| |
shiftCount:Number —
Um número ou uma expressão que é convertida em um número inteiro de 0 a 31.
|
int —
O resultado da operação bit a bit.
|
Exemplo
Como usar este exemplo
O código a seguir usa o deslocamento à direita bit a bit e o operador de atribuição (
>>=
):
function convertToBinary(numberToConvert:Number):String { var result:String = ""; for (var i = 0; i < 32; i++) { // Extract least significant bit using bitwise AND. var lsb:Number = numberToConvert & 1; // Add this bit to the result. result = (lsb ? "1" : "0")+result; // Shift numberToConvert right by one bit, to see next bit. numberToConvert >>= 1; } return result; } trace(convertToBinary(479)); // Returns the string 00000000000000000000000111011111. // This string is the binary representation of the decimal number 479.
Elementos da API relacionados
>>> bitwise unsigned right shift | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
O mesmo do operador de deslocamento para a direita bit a bit ( >>
), exceto que ele não preserva o sinal da expressão original, porque os bits à esquerda são sempre preenchidos com 0.
Um número de ponto flutuante é convertido em um número inteiro, descartando os dígitos após o ponto decimal. Um número inteiro positivo é convertido em um valor hexadecimal sem sinal, com um valor máximo de 4294967295 ou 0xFFFFFFFF. Na conversão de valores maiores, serão descartados os dígitos mais significativos, de forma que o valor convertido ainda seja de 32 bits. Um número negativo é convertido em um valor hexadecimal sem sinal, usando a notação de complemento de dois, com um valor mínimo de -2147483648 ou 0x800000000. Um número menor será convertido para o complemento de dois com precisão maior, antes que os dígitos mais significativos sejam descartados.
O resultado é interpretado como um número inteiro de 32 bits sem sinal, portanto, o resultado é um número inteiro no intervalo de 0 a 4294967295.
Nota:o ActionScript não tem operadores complementares "deslocamento para a esquerda bit a bit sem sinal", mas é possível obter o mesmo efeito usando uint(expression << shiftCount)
.
expression:Number —
Um número ou uma expressão a ser deslocada para a direita.
| |
shiftCount:Number —
Um número ou uma expressão que é convertida em um número inteiro de 0 a 31.
|
uint —
O resultado da operação bit a bit.
|
Exemplo
Como usar este exemplo
O exemplo a seguir converte -1 em um número inteiro de 32 bits e o desloca 1 bit para a direita:
var a:Number = -1 >>> 1; trace(a); // 2147483647
Elementos da API relacionados
>>>= bitwise unsigned right shift and assignment | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Realiza uma operação de deslocamento para a direita bit a bit sem sinal e armazena o resultado em expression
. As duas instruções a seguir são equivalentes:
A >>>= B; A = (A >>> B);Operandos
expression:Number —
Um número ou uma expressão a ser deslocada para a direita.
| |
shiftCount:Number —
Um número ou uma expressão que é convertida em um número inteiro de 0 a 31.
|
uint —
O resultado da operação bit a bit.
|
Exemplo
Como usar este exemplo
O exemplo a seguir converte -1 em um número inteiro de 32 bits e o desloca 1 bit para a direita:
var a:Number = -1; a >>>= 1; trace(a); // 2147483647
Elementos da API relacionados
^ bitwise XOR | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Converte expression1
e expression2
em números inteiros sem sinal de 32 bits e coloca um algarismo 1 em cada posição, onde os bits correspondentes em expression1
ou expression2
, mas não ambos, são 1.
Um número de ponto flutuante é convertido em um número inteiro, descartando os dígitos após o ponto decimal. Um número inteiro positivo é convertido em um valor hexadecimal sem sinal, com um valor máximo de 4294967295 ou 0xFFFFFFFF. Na conversão de valores maiores, serão descartados os dígitos mais significativos, de forma que o valor convertido ainda seja de 32 bits. Um número negativo é convertido em um valor hexadecimal sem sinal, usando a notação de complemento de dois, com um valor mínimo de -2147483648 ou 0x800000000. Um número menor será convertido para o complemento de dois com precisão maior, antes que os dígitos mais significativos sejam descartados.
O resultado é interpretado como um número de complemento de dois de 32 bits, portanto, o resultado é um número inteiro no intervalo de -2147483648 a 2147483647.
Operandosexpression1:Number —
Um número ou uma expressão que resulta em um número.
| |
expression2:Number —
Um número ou uma expressão que resulta em um número.
|
int —
O resultado da operação bit a bit.
|
Exemplo
Como usar este exemplo
O exemplo a seguir usa o operador XOR bit a bit nos números decimais 15 e 9, e atribui o resultado à variável
a
:
// 15 decimal = 1111 binary // 9 decimal = 1001 binary var a:Number = 15 ^ 9; trace(a); // 1111 ^ 1001 = 0110 // returns 6 decimal (0110 binary)
Elementos da API relacionados
^= bitwise XOR assignment | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Atribui a expression1
o valor de expression1 / expression2
. Por exemplo, as duas instruções a seguir são equivalentes:
x ^= y x = x ^ yOperandos
expression1:Number —
Um número ou uma expressão que resulta em um número.
| |
expression2:Number —
Um número ou uma expressão que resulta em um número.
|
int —
O resultado da operação bit a bit.
|
Exemplo
Como usar este exemplo
O exemplo a seguir mostra uma operação de atribuição (^=) XOR bit a bit:
// 15 decimal = 1111 binary var a:Number = 15; // 9 decimal = 1001 binary var b:Number = 9; trace(a ^= b); // returns 6 decimal (0110 binary)
Elementos da API relacionados
/*..*/ block comment delimiter | Operador |
/* comment */ /* comment comment */ |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Delimita uma ou mais linhas de comentários de script. Os caracteres que aparecem entre o delimitador de abertura ( /*
) e o delimitador de fechamento ( */
) são interpretados como um comentário e ignorados pelo compilador do ActionScript. Use estes delimitadores para identificar comentários em várias linhas sucessivas; para comentários de uma linha, use o delimitador //
.
Você receberá uma mensagem de erro, se omitir o delimitador de comentário de bloco de fechamento ( */
), ou se tentar aninhar comentários. Após o uso de um delimitador de abertura ( /*
), o primeiro delimitador de fechamento ( */
) finaliza o comentário, independentemente do número de delimitadores de abertura colocados antes dele.
comment:* —
Quaisquer caracteres.
|
Exemplo
Como usar este exemplo
O script a seguir usa os delimitadores de comentários em bloco, no início do script:
/* records the X and Y positions of the ball and bat movie clips */ var ballX:Number = ball_mc._x; var ballY:Number = ball_mc._y; var batX:Number = bat_mc._x; var batY:Number = bat_mc._y;
/* This is an attempt to nest comments. /* But the first closing tag will be paired with the first opening tag */ and this text will not be interpreted as a comment */
Elementos da API relacionados
{ } braces (XML) | Operador |
myXML = <{tagName} {attributeName} = {attributeValue}>{content}{tagName}> |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Avalia uma expressão que é usada em um inicializador XML ou XMLList. Um inicializador XML ou XMLList é um valor literal atribuído a um tipo de variável XML ou XMLList. Uma expressão delimitada pelos operadores {
and }
do XML pode ser utilizada em um inicializador XML ou XMLList, em vez de nomes literais ou valores. Também pode ser utilizada uma expressão no lugar de tagName
, attributeName
, attributeValue
e content
.
myXML:* —
Um objeto XML ou XMLList.
| |
tagName:* —
Uma expressão que resulta no nome de uma marca XML.
| |
attributeName:* —
Uma expressão que resulta no nome de um atributo XML.
| |
attributeValue:* —
Uma expressão que resulta no valor de um atributo XML.
| |
content:* —
Uma expressão que resulta no conteúdo de uma marca XML.
|
Exemplo
Como usar este exemplo
O exemplo a seguir mostra como usar os operadores { and }, durante a definição de um XML literal:
var tagname:String = "item"; var attributename:String = "id"; var attributevalue:String = "5"; var content:String = "Chicken"; var x:XML = <{tagname} {attributename}={attributevalue}>{content}</{tagname}>; trace(x.toXMLString()); // <item id="5">Chicken</item>
Elementos da API relacionados
[ ] brackets (XML) | Operador |
myXML[expression] |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Acessa uma propriedade ou um atributo de um objeto XML ou XMLList. O operador de colchetes permite acessar nomes de propriedades que não são acessíveis com o operador ponto ( .
).
myXML:* —
Um objeto XML ou XMLList.
| |
expression:* —
Uma expressão que resulta no nome de uma marca ou atributo XML.
|
Exemplo
Como usar este exemplo
O exemplo a seguir mostra como usar os operadores
[
and ]
para acessar uma propriedade XML que não é acessível com o operador dot por causa do hífen no nome da marca:
var myXML:XML = <a><foo-bar>44</foo-bar></a>; trace(myXML["foo-bar"]);
Elementos da API relacionados
, comma | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Avalia expression1
, em seguida, expression2
e assim por diante. Este operador é usado principalmente com a instrução de repetição for
e é frequentemente usado com o operador parênteses ()
.
expression1:* —
Uma expressão a ser avaliada.
| |
expression2:* —
Uma expressão a ser avaliada.
| |
expressionN:* —
Qualquer número de expressões adicionais a ser avaliado.
|
Object —
Os valores das expressões avaliadas.
|
Exemplo
Como usar este exemplo
O exemplo a seguir usa o operador vírgula (
,
) em um ciclo for
:
for (i = 0, j = 0; i < 3 && j < 3; i++, j+=2) { trace("i = " + i + ", j = " + j); } // output: // i = 0, j = 0 // i = 1, j = 2
=
):
var v:Number = 0; v = 4, 5, 6; trace(v); // 4
var v:Number = 0; v = (4, 5, 6); trace(v); // 6
v + 4
, é atribuída à variável v
, porque o operador de atribuição (=) tem precedência ao operador vírgula. A segunda expressão, z++
, é avaliada, e z
é incrementada em uma unidade.
var v:Number = 0; var z:Number = 0; v = v + 4 , z++, v + 6; trace(v); // 4 trace(z); // 1
=
):
var v:Number = 0; var z:Number = 0; v = (v + 4, z++, v + 6); trace(v); // 6 trace(z); // 1
Elementos da API relacionados
+ concatenation | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Concatena (combina) strings. Se uma expressão é uma string, todas as outras expressões são convertidas em strings e concatenadas.
Se ambas as expressões são números, este operador se comporta como um operador de adição.
Operandosexpression1:String —
Uma string a ser concatenada.
| |
expression2:String —
Uma string a ser concatenada.
|
String —
A string concatenada.
|
Exemplo
Como usar este exemplo
O exemplo a seguir concatena duas strings.
var lastName:String = "Cola"; var instrument:String = "Drums"; trace(lastName + " plays " + instrument); // Cola plays Drums
trace("Number " + 8 + 0); // Number 80
var a:String = 3 + 10 + "asdf"; trace(a); // 13asdf var b:String = "asdf" + 3 + 10; trace(b); // asdf310
Elementos da API relacionados
+ concatenation (XMLList) | Operador |
expression1 + expression2 |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Concatena (combina) valores XML ou XMLList em um objeto XMLList. Um objeto XMLList resulta apenas se ambos os operadores são valores XML ou XMLList.
Operandosexpression1:* —
Um valor XML ou XMLList.
| |
expression2:* —
Um valor XML ou XMLList.
|
XMLList —
O objeto XMLList concatenado.
|
Exemplo
Como usar este exemplo
O exemplo a seguir mostra como usar o operador XMLList (
+
) (concatenação):
var x1:XML = <employee id = "42"> <firstName>Joe</firstName> <lastName>Smith</lastName> </employee>; var x2:XML = <employee id = "43"> <firstName>Susan</firstName> <lastName>Jones</lastName> </employee>; var myXMLList:XMLList = x1 + x2; trace(myXMLList.toXMLString());
A instrução trace
produz o seguinte resultado:
<employee id = "42">
<firstName>Joe</firstName>
<lastName>Smith</lastName>
</employee>
<employee id = "43">
<firstName>Susan</firstName>
<lastName>Jones</lastName>
</employee>
Elementos da API relacionados
+= concatenation assignment | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Atribui a expression1
o valor de expression1 + expression2
. Por exemplo, as duas instruções a seguir têm o mesmo resultado:
x += y; x = x + y;Todas as regras do operador de concatenação (
+
) se aplicam ao operador de atribuição de concatenação ( +=
). Observe que o uso da atribuição de concatenação para a propriedade text
de um TextField
(ou seja, someTextField.text += moreText
) é muito menos eficiente do que TextField.appendText()
, particularmente, com um TextField
que contém uma quantidade significativa de conteúdo.
Operandosexpression1:String —
Uma string.
| |
expression2:String —
Uma string.
|
Number —
O resultado da concatenação.
|
Exemplo
Como usar este exemplo
Este exemplo usa o operador
+=
com uma expressão de string:
var x1:String = "My name is "; x1 += "Gilbert"; trace(x1); // My name is Gilbert
Elementos da API relacionados
+= concatenation assignment (XMLList) | Operador |
expression1 += expression2 |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Atribui a expression1
, que é um objeto XMLList, o valor de expression1 + expression2
. Por exemplo, as duas instruções a seguir têm o mesmo resultado:
x += y; x = x + y;Todas as regras do operador de concatenação XMLList (
+
) se aplicam ao operador de atribuição de concatenação ( +=
).
Operandosexpression1:XMLList —
O objeto XMLList ao qual você está adicionando um novo valor.
| |
expression2:* —
Um valor XML ou XMLList.
|
Exemplo
Como usar este exemplo
O exemplo a seguir mostra como usar o operador de atribuição de concatenação de XMLList (
+=
):
var x1:XML = <location>Athens</location>; var x2:XML = <location>Paris</location>; myXMLList = x1 + x2; var x3:XML = <location>Springfield</location>; myXMLList += x3; trace(myXMLList.toXMLString());
A instrução trace
produz o seguinte resultado:
<location>Athens</location>
<location>Paris</location>
<location>Springfield</location>
Elementos da API relacionados
?: conditional | Operador |
expression1 ? expression2 : expression3 |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Avalia a expression1
, e se o valor de expression1
for true
, o resultado será o valor de expression2
; caso contrário, o resultado será o valor de expression3
.
expression1:Boolean —
Uma expressão que resulta em um valor Booliano; geralmente, uma expressão de comparação, como x < 5 .
| |
expression2:* —
Um valor de qualquer tipo.
| |
expression3:* —
Um valor de qualquer tipo.
|
* —
O valor de expression2 ou expression3 .
|
Exemplo
Como usar este exemplo
A instrução a seguir atribui o valor da variável
x
à variável z
, porque a primeira expressão resulta em true
:
var x:Number = 5; var y:Number = 10; var z = (x < 6) ? x: y; trace(z); // returns 5
var timecode:String = (new Date().getHours() < 11) ? "AM" : "PM"; trace(timecode);
if (new Date().getHours() < 11) { var timecode:String = "AM"; } else { var timecode:String = "PM"; } trace(timecode);
-- decrement | Operador |
--expression expression-- |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Subtrai 1 do operando. O operando pode ser uma variável, um elemento em uma matriz ou uma propriedade de um objeto. A forma pré-redução do operador ( --expression
) subtrai 1 de expression
e retorna o resultado. A forma pós-redução do operador ( expression--
) subtrai 1 de expression
e retorna o valor inicial de expression
(o valor anterior à subtração).
expression:Number —
Um número ou uma variável que resulta em um número.
|
Number —
O resultado do valor reduzido.
|
Exemplo
Como usar este exemplo
A forma pré-redução do operador diminui
x
para 2 ( x
- 1 = 2
) e retorna o resultado como y
:
var x:Number = 3; var y:Number = --x; // y is equal to 2
x
para 2 ( x
- 1 = 2
) e retorna o valor original de x
como resultado y
:
var x:Number = 3; var y:Number = x--; // y is equal to 3
i
em 1:
for (var i = 10; i > 0; i--) { trace(i); }
delete | Operador |
delete reference |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Destrói a propriedade do objeto, especificada por reference
; o resultado será true
se a propriedade não existir depois da conclusão da operação; caso contrário, será false
. O operador delete
retornará true
se for chamado em uma propriedade não inexistente ou em uma propriedade dinâmica não definida em uma classe.
O operador delete
poderá falhar e retornar false
, se o parâmetro reference
não puder ser excluído. Não é possível excluir propriedades fixas ou variáveis que são declaradas com a instrução var
. Uma propriedade fixa é uma variável ou um método definido em uma definição de classe.
O operador delete
não pode ser usado para destruir uma propriedade de classe, a menos que essa classe seja uma classe dinâmica adicionada durante o tempo de execução. As propriedades das classes selecionadas não podem ser destruídas utilizando delete
. Em vez disso, defina a propriedade como null
.
Nota: não é possível excluir um objeto, mas é possível torná-lo qualificado para coleta de lixo removendo todas as referências ao objeto. A referência mais frequente a um objeto é uma variável que aponta para o objeto. Remova a referência definindo a variável como null
. O coletor de lixo remove qualquer objeto que não tenha referências.
reference:* —
O nome da propriedade a ser eliminada.
|
Boolean —
O valor true , se a exclusão tiver êxito, e false , se falhar.
|
Exemplo
Como usar este exemplo
O exemplo a seguir exclui uma propriedade de um objeto:
// create the new object "account" var account:Object = new Object(); // assign property name to the account account.name = "Jon"; // delete the property delete account.name; trace(account.name); // undefined // delete a nonexistent property var fooDeleted:Boolean = delete account.foo; trace(fooDeleted); // true
O exemplo a seguir exclui o valor de um elemento de matriz, mas o valor da propriedade length
fica inalterado:
var my_array:Array = new Array(); my_array[0] = "abc"; // my_array.length == 1 my_array[1] = "def"; // my_array.length == 2 my_array[2] = "ghi"; // my_array.length == 3 // my_array[2] is deleted, but Array.length is not changed delete my_array[2]; trace(my_array.length); // 3 trace(my_array); // abc,def,
O exemplo a seguir mostra como o Booliano retornado de delete
pode ser usado como uma condição para a execução futura de códigos. Observe que, se um item já tiver sido excluído, uma nova chamada de delete
no item retornará false
.
var my_array:Array = [ "abc", "def", "ghi" ]; var deleteWasSuccessful:Boolean deleteWasSuccessful = delete my_array[0]; if(deleteWasSuccessful) delete my_array[1]; deleteWasSuccessful = delete my_array[0]; if(deleteWasSuccessful) delete my_array[2]; trace(my_array) // outputs: undefined,undefined,ghi
Elementos da API relacionados
delete (XML) | Operador |
delete reference |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Exclui os elementos ou atributos XML especificados por reference
.
reference:XMLList —
Um objeto XMLList, que especifica os elementos ou atributos XML a serem excluídos.
|
Boolean —
Retorna sempre um valor true . O resultado é sempre true porque o operando XMLList refere-se sempre a um objeto XMLList válido (embora provavelmente vazio).
|
Exemplo
Como usar este exemplo
O exemplo abaixo mostra como excluir um atributo, em seguida, excluir um único elemento e, depois disso, excluir vários elementos:
var x1:XML = <x1> <a id = "52">AYY</a> <a>AYY 2 </a> <b>BEE</b> <c>CEE</c> </x1>; trace(x1.toXMLString()); trace("___________"); delete x1.a.@id; trace(x1.toXMLString()); trace("___________"); delete x1.b; trace(x1.toXMLString()); trace("___________"); delete x1.a; trace(x1.toXMLString());
O resultado é o seguinte:
<x1>
<a id="52">AYY</a>
<a>AYY 2</a>
<b>BEE</b>
<c>CEE</c>
</x1>
___________
<x1>
<a>AYY</a>
<a>AYY 2</a>
<b>BEE</b>
<c>CEE</c>
</x1>
___________
<x1>
<a>AYY</a>
<a>AYY 2</a>
<c>CEE</c>
</x1>
___________
<x1>
<c>CEE</c>
</x1>
O exemplo a seguir mostra como excluir todo o conteúdo de um elemento, incluindo atributos e elementos filho, sem excluir o elemento:
var xml:XML = <order> <item id="121">hamburger</item> <item id="122">fries</item> <item id="123">chocolate shake</item> </order>; delete xml.item[1].*; delete xml.item[1].@*; trace(xml);
O resultado deste exemplo é o seguinte:
<order>
<tem id="121">hamburger</item>
<item/>
<item id="123">chocolate shake</item>
</order>
.. descendant accessor | Operador |
myXML..childElement1..@attributeName |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Navega até elementos descendentes de um objeto XML ou XMLList, ou (combinado com o operador @) localiza atributos correspondentes aos descendentes. Não é necessário que os elementos ou atributos correspondentes sejam filhos diretos do objeto XML ou XMLList; eles podem estar mais abaixo na árvore (por exemplo, netos). O resultado é um objeto XMLList, porque mais de um elemento filho ou atributo podem ser correspondentes.
A ordem dos nós no objeto XMLList retornado é o resultado de uma busca em profundidade. Por exemplo, considere o seguinte:
var myXML:XML = <a> <b>one <c> <b>two</b> </c> </b> <b>three</b> </a>; trace(myXML..b[0].toXMLString()); trace("______________"); trace(myXML..b[1].toXMLString()); trace("______________"); trace(myXML..b[2].toXMLString());
A seguinte saída resultaria em:
<b>
one
<c>
<b>two</b>
</c>
</b>
______________
<b>two</b>
______________
<b>three</b>
Para retornar descendentes com nomes que correspondam às palavras reservadas do ActionScript, use o método XML.descendants()
, em vez do operador descendentes (..), como mostrado no exemplo abaixo:
var xml:XML = <enrollees> <student id="239"> <class name="Algebra" /> <class name="Spanish 2"/> </student> <student id="206"> <class name="Trigonometry" /> <class name="Spanish 2" /> </student> </enrollees>; trace(xml.descendants("class"));
myXML:Object —
O objeto XML ou XMLList.
| |
childElement1_or_attributeName —
O nome de uma propriedade XML ou do nome de um atributo.
|
Exemplo
Como usar este exemplo
O exemplo a seguir mostra como usar o operador de acessador de descendentes (..) para retornar elementos descendentes de um objeto XML, e para retornar um atributo de um elemento.
var myXML:XML = <employees> <employee id = "42"> <firstName>Billy</firstName> <lastName>Einstein</lastName> </employee> <employee id = "43"> <firstName>Sally</firstName> <lastName>Shostakovich</lastName> </employee> </employees> trace(myXML..firstName); // <firstName>Billy</firstName> // <firstName>Sally</firstName> trace(myXML..@id); //4243
Elementos da API relacionados
/ division | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Divide expression1
por expression2
. O resultado da operação de divisão é um número de ponto flutuante, de precisão dupla.
expression:Number —
Um número ou uma variável que resulta em um número.
|
Number —
O resultado do ponto flutuante da operação.
|
Exemplo
Como usar este exemplo
O exemplo a seguir mostra que os resultados da divisão por 0 serão diferentes se o dividendo for positivo, negativo ou 0.
trace(3/0); // Infinity trace(-3/0); // -Infinity trace(0/0); // NaN
Elementos da API relacionados
/= division assignment | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Atribui a expression1
o valor de expression1 / expression2
. Por exemplo, as duas instruções a seguir são equivalentes:
x /= y; x = x / y;Operandos
expression1:Number —
Um número ou uma variável que resulta em um número.
| |
expression2:Number —
Um número ou uma variável que resulta em um número.
|
Number —
Um número.
|
Exemplo
Como usar este exemplo
O código a seguir mostra o operador de atribuição de divisão (
/=
), usado com variáveis e números:
var a:Number = 10; var b:Number = 2; a /= b; trace(a); // 5
Elementos da API relacionados
. dot | Operador |
object.property_or_method |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Acessa variáveis e métodos de classe, obtém e define propriedades do objeto e delimita os pacotes importados ou classes.
Operandosobject:Object —
Uma ocorrência de uma classe. O objeto pode ser uma ocorrência de quaisquer classes do ActionScript ou uma classe que você define. Este operando fica sempre à esquerda do operador ponto (.).
| |
property_or_method:* —
O nome de uma propriedade ou método associado a um objeto. Todos as propriedades e métodos válidos para classes internas são relacionados nas tabelas de resumo de propriedades e métodos para essa classe. Este operando fica sempre à direita do operador ponto (.).
|
* —
A variável, o método ou a propriedade nomeada no lado direito do ponto.
|
Exemplo
Como usar este exemplo
O exemplo a seguir usa o operador ponto como delimitador durante a importação da classe Cronômetro.
import flash.utils.Timer;
var obj:Object = new Object(); obj.propertyA = "hello"; trace(obj.propertyA); // hello
Elementos da API relacionados
. dot (XML) | Operador |
myXML.childElement myXML.@attributeName |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Navega até elementos filho de um objeto XML ou XMLList, ou (combinado com o operador @) retorna atributos de um objeto XML ou XMLList. O objeto retornado é um XMLList, porque mais de um elemento filho ou atributo podem ser correspondentes.
Para retornar elementos com nomes que correspondam às palavras reservadas do ActionScript, use o método XML.elements()
ou o método XML.descendants()
, em vez do operador ponto (.) do XML, como mostrado neste exemplo:
var xml:XML = <student id="206"> <class name="Trigonometry" /> <class name="Spanish 2" /> </student>; trace(xml.elements("class")); trace(xml.descendants("class"));
myXML:Object —
O objeto XML ou XMLList.
| |
childElement:* —
O nome de uma propriedade XML.
| |
attributeName:* —
O nome de um atributo.
|
XMLList —
O XMLList especificado.
|
Exemplo
Como usar este exemplo
O exemplo a seguir mostra como usar o operador ponto (.) para retornar para um elemento filho de um objeto XML e para retornar um atributo de um elemento:
var myXML:XML = <employee id = "42"> <firstName>Billy</firstName> <lastName>Einstein</lastName> </employee>; trace(myXML.firstName); // Billy trace(myXML.@id); // 42
Elementos da API relacionados
== equality | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Testa a igualdade entre duas expressões. O resultado é true
, se as expressões forem iguais.
Se os tipos de dados dos dois operandos forem correspondentes, a definição de igual depende do tipo de dados dos operandos:
- Os valores dos tipos int, uint e Booliano são considerados iguais, se tiverem o mesmo valor.
- Os números com valores correspondentes são considerados iguais, a menos que ambos sejam
NaN
. - Se o valor de ambos os operandos for
null
ouundefined
, eles serão considerados iguais. - As expressões das strings serão iguais, se tiverem o mesmo número de caracteres e esses forem idênticos.
- Para objetos XML:
- Se um operando for um texto ou nó de atributo, e o outro tiver um conteúdo simples, ambos os operandos são convertidos em strings com o método
toString()
, e são considerados iguais, se as strings resultantes forem correspondentes. - Caso contrário, os objetos são considerados iguais apenas se o nome qualificado, os atributos e as propriedades filho para ambos os objetos forem correspondentes.
- Se um operando for um texto ou nó de atributo, e o outro tiver um conteúdo simples, ambos os operandos são convertidos em strings com o método
- Os objetos XMLList são considerados iguais se tiverem o mesmo número de propriedades, e se a ordem e os valores das propriedades forem correspondentes.
- Para objetos Namespace, os valores são considerados iguais se as propriedades
uri
de ambos os objetos forem correspondentes. - Para objetos QName, os valores serão considerados iguais se as propriedades
uri
de ambos os objetos forem correspondentes e se as propriedadeslocalName
dos objetos forem correspondentes. - As variáveis que representam objetos, matrizes e funções são comparadas por referência. Duas variáveis serão iguais se fizerem referência ao mesmo objeto, à mesma matriz ou função. Duas matrizes separadas nunca são consideradas iguais, mesmo se tiverem um número idêntico de elementos.
false
, exceto nestas circunstâncias:
- Os valores dos operandos são
undefined
enull
; neste caso, o resultado étrue
. - A conversão automática de tipo de dados converte os tipos de dados de valores de String, Boolean, int, uint e Number em tipos compatíveis, e os valores convertidos são iguais e, nesse caso, os operandos são considerados iguais.
- Um operando é do tipo XML com conteúdo simples (
hasSimpleContent() == true
). Depois que os dois operandos forem convertidos em sequências de caracteres por meio do métodotoString()
, as sequências de caracteres resultantes serão correspondentes. - Um operando é do tipo XMLList, e nenhuma das seguintes condições é verdadeira:
- A propriedade
length
do objeto XMLList é 0, e a do outro objeto éundefined
. - A propriedade
length
do objeto XMLList é 1, e um elemento do objeto XMLList é correspondente ao outro operando.
- A propriedade
expression1:Object —
Um número, uma string, um valor Booleano, um objeto, uma matriz ou uma expressão.
| |
expression2:Object —
Um número, uma string, um valor Booleano, um objeto, uma matriz ou uma expressão.
|
Boolean —
Um valor true , se as expressões não forem iguais; caso contrário, false .
|
Exemplo
Como usar este exemplo
O exemplo a seguir usa o operador de igualdade (
==
) com uma instrução if
:
var a:String = "David" var b:String = "David"; if (a == b) { trace("David is David"); }
var a:Number = 5; var b:String = "5"; trace(a == b); // true
true
é convertido em 1 e false
é convertido em 0:
var c:Number = 1; var d:Boolean = true; trace(c == d); // true var e:Number = 0; var f:Boolean = false; trace(e == f); // true
false
:
var g:String = "true"; var h:Boolean = true; trace(g == h); // false
false
para essas duas matrizes. Embora as matrizes pareçam iguais, a comparação por referência requer que firstArray
e secondArray
se refiram à mesma matriz. O segundo exemplo cria a variável thirdArray
, que aponta para a mesma matriz como firstArray
. O operador de igualdade retorna verdadeiro ou falso para essas duas matrizes, porque as duas variáveis se referem à mesma matriz.
var firstArray:Array = new Array("one", "two", "three"); var secondArray:Array = new Array("one", "two", "three"); trace(firstArray == secondArray); // false /* Arrays are only considered equal if the variables refer to the same array. */ var thirdArray:Array = firstArray; trace(firstArray == thirdArray); // true
Elementos da API relacionados
> greater than | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Compara duas expressões e determina se expression1
é maior do que expression2
; se for, o resultado será true
. Se expression1
for menor ou igual a expression2
, o resultado será false
.
Se ambos os operandos forem do tipo String, serão comparados em ordem alfabética, com as letras maiúsculas antecedendo as minúsculas. Caso contrário, os operandos serão primeiro convertidos em números e, em seguida, comparados.
Operandosexpression1:Object —
Uma string, um número inteiro ou um número com casas decimais.
| |
expression2:Object —
Uma string, um número inteiro ou um número com casas decimais.
|
Boolean —
Um valor true se expression1 for maior do que expression2 ; caso contrário, false .
|
Exemplo
Como usar este exemplo
Este exemplo mostra que as strings são comparadas alfabeticamente, com letras maiúsculas antes de letras minúsculas:
var a:String = "first"; var b:String = "First"; trace(a > b); // true
var c:Number = 5; var d:String = "4"; trace(c > d); // true var e: Number = 2; var f:Boolean = true; trace(e > f); // true
>= greater than or equal to | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Compara duas expressões e determina se expression1
é maior ou igual a expression2
( true
) ou expression1
é menor que expression2
( false
).
expression1:Object —
Uma string, um número inteiro ou um número com casas decimais.
| |
expression2:Object —
Uma string, um número inteiro ou um número com casas decimais.
|
Boolean —
Um valor true se expression1 for maior ou igual a expression2 ; caso contrário, será false .
|
Exemplo
Como usar este exemplo
No exemplo a seguir, o operador maior ou igual a ( >=) é usado para determinar se a hora atual é maior ou igual a 12:
if (new Date().getHours() >= 12) { trace("good afternoon"); } else { trace("good morning"); }
Elementos da API relacionados
in | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Avalia se uma propriedade é parte de um objeto específico. Para usar o operador in
, especifique um nome de propriedade como o primeiro operando, e um objeto como o segundo operando. Se o objeto que você especificou tiver essa propriedade, o resultado será true
; caso contrário, o resultado será false
.
Se o objeto especificado for um objeto Matriz, utilize o operador in
para verificar se é válido um determinado número de índice. Se você utilizar um número inteiro como o primeiro operando, caso o índice esteja no intervalo válido de números de índices o resultado será true
; caso contrário, o resultado será false
.
Boolean —
Um valor true se expression1 for uma propriedade do objeto representado por expression2 , caso contrário, um valor false .
|
Exemplo
Como usar este exemplo
O exemplo a seguir usa o operador
in
para mostrar que PI
é uma propriedade do objeto Math, (matemática), mas que myProperty
não é.
trace("PI" in Math); // true trace("myProperty" in Math); // false
O exemplo a seguir usa o operador in
para mostrar que os números 0, 1 e 2 são números de índice válidos no objeto myArray
, mas que o número 3 não é.
public var myArray:Array = ["zero", "one", "two"]; trace(0 in myArray); // true trace(1 in myArray); // true trace(2 in myArray); // true trace(3 in myArray); // false
Elementos da API relacionados
++ increment | Operador |
++expression expression++ |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Adiciona 1 a uma expressão. A expressão pode ser uma variável, um elemento em uma matriz ou uma propriedade de um objeto. A forma pré-aumento do operador ( ++expression
) adiciona 1 a ? expression
e retorna o resultado. A forma pós-aumento do operador ( expression++
) adiciona 1 a expression
e retorna o valor inicial de expression
(o valor anterior à adição).
expression:Number —
Um número ou uma variável que resulta em um número.
|
Number —
O resultado do aumento.
|
Exemplo
Como usar este exemplo
O exemplo a seguir usa ++ como um operador pré-incremento, em uma repetição
while
para mostrar que o valor adicionado à matriz é o valor que foi aumentado:
var preInc:Array = new Array(); var i:int = 0; while (i < 10) { preInc.push(++i); } trace(preInc); // 1,2,3,4,5,6,7,8,9,10
while
para mostrar que o valor adicionado à matriz é o valor que inicial:
var postInc:Array = new Array(); var i:int = 0; while (i < 10) { postInc.push(i++); } trace(postInc); // 0,1,2,3,4,5,6,7,8,9
while
seja executado cinco vezes:
var i:int = 0; while (i++ < 5) { trace("this is execution " + i); } /* output: this is execution 1 this is execution 2 this is execution 3 this is execution 4 this is execution 5 */
!= inequality | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Testes para o oposto exato do operador de igualdade ( ==
). Se expression1
for igual a expression2
, o resultado será false
. Da mesma forma que o operador de igualdade ( ==
), a definição de igual depende dos tipos de dados que estão sendo comparados.
Se os tipos de dados dos dois operandos forem correspondentes, a definição de igual depende do tipo de dados dos operandos:
- Os valores dos tipos int, uint e Booliano são considerados iguais, se tiverem o mesmo valor.
- Os números com valores correspondentes são considerados iguais, a menos que ambos sejam
NaN
. - Se o valor de ambos os operandos for
null
ouundefined
, eles serão considerados iguais. - As expressões das strings serão iguais, se tiverem o mesmo número de caracteres e esses forem idênticos.
- Para objetos XML:
- Se um operando for um texto ou nó de atributo, e o outro tiver um conteúdo simples, ambos os operandos são convertidos em strings com o método
toString()
, e são considerados iguais, se as strings resultantes forem correspondentes. - Caso contrário, os objetos são considerados iguais apenas se o nome qualificado, os atributos e as propriedades filho para ambos os objetos forem correspondentes.
- Se um operando for um texto ou nó de atributo, e o outro tiver um conteúdo simples, ambos os operandos são convertidos em strings com o método
- Os objetos XMLList são considerados iguais se tiverem o mesmo número de propriedades, e se a ordem e os valores das propriedades forem correspondentes.
- Para objetos Namespace, os valores são considerados iguais se as propriedades
uri
de ambos os objetos forem correspondentes. - Para objetos QName, os valores serão considerados iguais se as propriedades
uri
de ambos os objetos forem correspondentes e se as propriedadeslocalName
dos objetos forem correspondentes. - As variáveis que representam objetos, matrizes e funções são comparadas por referência. Duas variáveis serão iguais se fizerem referência ao mesmo objeto, à mesma matriz ou função. Duas matrizes separadas nunca são consideradas iguais, mesmo se tiverem um número idêntico de elementos.
!=
) retornará true
, exceto nestas circunstâncias:
- Os valores dos operandos são
undefined
enull
; neste caso, o resultado étrue
. - A conversão automática de tipo de dados converte os tipos de dados de valores de String, Boolean, int, uint e Number em tipos compatíveis, e os valores convertidos são iguais e, nesse caso, os operandos são considerados iguais.
- Um operando é do tipo XML com conteúdo simples (
hasSimpleContent() == true
), e depois que ambos os operandos são convertidos em sequências de caracteres com o métodotoString()
, as sequências de caracteres são correspondentes. - Um operando é do tipo XMLList, e nenhuma das seguintes condições é verdadeira:
- A propriedade
length
do objeto XMLList é 0, e a do outro objeto éundefined
. - A propriedade
length
do objeto XMLList é 1, e um elemento do objeto XMLList é correspondente ao outro operando.
- A propriedade
expression1:Object —
Um número, uma string, um valor Booleano, uma variável, um objeto, uma matriuz ou uma função.
| |
expression2:Object —
Um número, uma string, um valor Booleano, uma variável, um objeto, uma matriuz ou uma função.
|
Boolean —
Um valor true , se as expressões não forem iguais; caso contrário, false .
|
Exemplo
Como usar este exemplo
O exemplo a seguir ilustra o resultado do operador de desigualdade (
!=
):
trace(5 != 8); // true trace(5 != 5); // false
!=
), em uma instrução if
:
var a:String = "David"; var b:String = "Fool"; if (a != b) { trace("David is not a fool"); }
var a:Function = function() { trace("foo"); }; var b:Function = function() { trace("foo"); }; a(); // foo b(); // foo trace(a != b); // true a = b; a(); // foo b(); // foo trace(a != b); // false
var a:Array = [ 1, 2, 3 ]; var b:Array = [ 1, 2, 3 ]; trace(a); // 1,2,3 trace(b); // 1,2,3 trace(a != b); // true a = b; trace(a); // 1,2,3 trace(b); // 1,2,3 trace(a != b); // false
Elementos da API relacionados
instanceof | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Avalia se uma cadeia de protótipos de expressão inclui o objeto de protótipo para function
. O operador instanceof
é incluído para compatibilidade retroativa com a edição 3 do ECMAScript, e pode ser útil para programadores avançados que optam por usar a herança com base em protótipo, com funções de construtor, em vez de classes.
Para verificar se um objeto é um membro de um tipo de dados específico, use o operador is
.
Quando utilizado com classes, o operador instanceof
é semelhante ao operador is
, porque uma cadeia de protótipos de classe inclui todas as suas superclasses. No entanto, as interfaces não estão incluídas nas cadeias de protótipos, de forma que o operador instanceof
sempre resultará em false
quando usado com interfaces, ao passo que o operador is
resultará em true
se o objeto pertencer a uma classe que implemente a interface especificada.
Nota: o operador is
do ActionScript é equivalente ao operador instanceof
do Java.
expression:Object —
O objeto que contém a cadeia de protótipos a ser avaliada.
| |
function:Object —
Um objeto (ou classe) de função.
|
Boolean —
Retorna true quando a cadeia de protótipos de expression inclui o objeto de protótipo para function . Caso contrário, retorna false .
|
Exemplo
Como usar este exemplo
O exemplo a seguir cria uma ocorrência da classe Sprite denominada
mySprite
e usa o operador instanceof
para verificar se a cadeia de protótipos de mySprite
inclui os objetos de protótipos das classes Sprite e DisplayObject. O resultado é true
com a classe Sprite e com a classe DisplayObject, porque os objetos de protótipos para Sprite e DisplayObject estão na cadeia de protótipos de mySprite
.
var mySprite:Sprite = new Sprite(); trace(mySprite instanceof Sprite); // true trace(mySprite instanceof DisplayObject); // true
instanceof
não funciona com interfaces. O operador is
resulta em true
, porque a classe DisplayObject, que é uma superclasse da classe Sprite, implementa a interface IBitmapDrawable.
var mySprite:Sprite = new Sprite(); trace(mySprite instanceof IBitmapDrawable); // false trace(mySprite is IBitmapDrawable); // true
Elementos da API relacionados
is | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Avalia se um objeto é compatível com um tipo de dados, uma classe ou uma interface específica. Use o operador is
, em vez do operador instanceof
, para obter comparações de tipo. É possível usar também o operador is
para verificar se um objeto implementa uma interface.
Boolean —
Retorna um valor true , quando expression1 é compatível com o tipo de dados ou a interface especificada em expression2 , caso contrário, false .
|
Exemplo
Como usar este exemplo
O exemplo a seguir cria uma ocorrência da classe Sprite, chamada
mySprite
e usa o operador is
para testar se mySprite
é uma ocorrência das classes Sprite e DisplayObject e se implementa a interface IEventDispatcher.
import flash.display.*; import flash.events.IEventDispatcher; var mySprite:Sprite = new Sprite(); trace(mySprite is Sprite); // true trace(mySprite is DisplayObject); // true trace(mySprite is IEventDispatcher); // true
Elementos da API relacionados
< less than | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Compara duas expressões e determina se expression1
é menor do que expression2
; se for, o resultado será true
. Se expression1
for maior ou igual a expression2
, o resultado será false
.
Se ambos os operandos forem do tipo String, serão comparados em ordem alfabética, com as letras maiúsculas antecedendo as minúsculas. Caso contrário, os operandos serão primeiro convertidos em números e, em seguida, comparados.
Operandosexpression1:Object —
Uma string, um número inteiro ou um número com casas decimais.
| |
expression2:Object —
Uma string, um número inteiro ou um número com casas decimais.
|
Boolean —
Um valor de true se expression1 for menor do que expression2 ; caso contrário, false .
|
Exemplo
Como usar este exemplo
Os exemplos a seguir mostram os resultados
true
e false
para as comparações numérica e sequencial:
trace(5 < 10); // true trace(2 < 2); // false trace(10 < 3); // false trace("Allen" < "Jack"); // true trace("Jack" < "Allen"); // false trace("11" < "3"); // true trace("11" < 3); // false (numeric comparison) trace("C" < "abc"); // true trace("A" < "a"); // true
<= less than or equal to | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Compara duas expressões e determina se expression1
é menor do que ou igual a expression2
; se for, o resultado será true
. Se expression1
for maior do que expression2
, o resultado será false
.
Se ambos os operandos forem do tipo String, serão comparados em ordem alfabética, com as letras maiúsculas antecedendo as minúsculas. Caso contrário, os operandos serão primeiro convertidos em números e, em seguida, comparados.
Operandosexpression1:Object —
Uma string, um número inteiro ou um número com casas decimais.
| |
expression2:Object —
Uma string, um número inteiro ou um número com casas decimais.
|
Boolean —
Um valor de true se expression1 for menor do que expression2 ; caso contrário, será false .
|
Exemplo
Como usar este exemplo
Os exemplos a seguir mostram os resultados
true
e false
para as comparações numérica e sequencial:
trace(5 <= 10); // true trace(2 <= 2); // true trace(10 <= 3); // false trace("Allen" <= "Jack"); // true trace("Jack" <= "Allen"); // false trace("11" <= "3"); // true trace("11" <= 3); // false (numeric comparison) trace("C" <= "abc"); // true trace("A" <= "a"); // true
// line comment delimiter | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Indica o início de um comentário de script. Os caracteres que aparecem entre o delimitador de comentário ( //
) e o caractere de final de linha são interpretados como um comentário, e são ignorados. Use este delimitador para comentários de uma linha; para comentários em várias linhas sucessivas, use os delimitadores /*
e */
.
comment:* —
Quaisquer caracteres.
|
Exemplo
Como usar este exemplo
O exemplo a seguir mostra um comentário de uma linha:
// Any text following a line comment delimiter is ignored during compilation
Elementos da API relacionados
&& logical AND | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Retorna expression1
, se for false
ou passível de conversão em false
; caso contrário, retorna expression2
. Exemplos de valores que podem ser convertidos em false
são 0, NaN
, null
e undefined
. Se você usar uma chamada de função, como expression2
, a função não será chamada se expression1
resultar em false
.
Se ambos os operandos forem do tipo Booliano, o resultado será true
, apenas quando os operandos forem true
, como mostrado na tabela a seguir:
Expressão | Avalia |
---|---|
|
|
|
|
|
|
|
|
expression1:* —
Um valor ou expressão de qualquer tipo.
| |
expression2:* —
Um valor de expressão de qualquer tipo.
|
* —
Um valor booliano, quando ambos os operandos são do tipo Boolean. Caso contrário, o resultado é o valor de qualquer uma das expressões.
|
Exemplo
Como usar este exemplo
O exemplo a seguir usa o operador lógico AND (
&&
) para realizar um teste, a fim de determinar se um participante ganhou o jogo. A variável turns
e a variável score
são atualizadas quando um participante joga ou pontua durante o jogo. O script resulta em "Você ganhou o jogo!", quando a pontuação do participante atinge 75 ou mais, em três rodadas ou menos.
var turns:Number = 2; var score:Number = 77; if ((turns <= 3) && (score >= 75)) { trace("You Win the Game!"); } else { trace("Try Again!"); }
Elementos da API relacionados
&&= logical AND assignment | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Atribui a expression1
o valor de expression1 && expression2
. Por exemplo, as duas instruções a seguir são equivalentes:
x &&= y; x = x && y;Operandos
expression1:* —
Um valor de qualquer tipo.
| |
expression2:* —
Um valor de qualquer tipo.
|
* —
Um valor Booliano, quando ambos os operandos são membros do tipo de dados Booliano Caso contrário, o resultado será o valor de qualquer uma das expressões.
|
Exemplo
Como usar este exemplo
O exemplo a seguir transforma a variável
myVar
em uma marca de XML, a menos que myVar
seja nula. O exemplo modifica a variável myVar
enquanto a variável não tiver o valor false
. Essa técnica se beneficia do fato de que o operador lógico AND ( &&
) retorna o valor da expression1
, se a expression1
resultar em false
; caso contrário, retorna o valor da expression2
. Se myTag
já contiver um valor que resulte em true
, myVar
será modificado para parecer com uma marca XML. No entanto, se myVar
contiver um valor que resulte em false
, como os valores null
, ""
(string vazia) e undefined
, entre outros, myVar
ficará inalterado.
var myVar:String = 'tag'; myVar &&= "<" + myVar + "/>"; trace (myVar); // output: <tag/>
if
, como mostrado no exemplo a seguir:
var myVar:String = 'tag'; if (myVar != '') { myVar = "<" + myVar + "/>"; } trace (myVar); // output: <tag/>
if
, é que o código pode ser lido com facilidade, enquanto a vantagem de usar o operador de atribuição AND ( &&=
) é que não é necessário especificar o valor padrão exato para um determinado tipo de dados.
Elementos da API relacionados
! logical NOT | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Inverte o valor Booliano de uma variável ou expressão. Se expression
for uma variável com valor absoluto ou convertido true
, o valor de !expression
será false
. Se a expressão x && y
resultar em false
, a expressão !(x && y)
resultará em true
.
As expressões a seguir ilustram o resultado do uso do operador lógico NOT (!):
!true
retornafalse
.!false
retornatrue
.
expression:Boolean —
Uma expressão ou variável que resulta em um valor Booliano.
|
Boolean —
O resultado Booliano da operação lógica.
|
Exemplo
Como usar este exemplo
No exemplo a seguir, a variável
happy
é definida como false
. A condição if
avalia a condição !happy
, e se a condição for true
, a instrução trace()
resultará em uma sequência de caracteres.
var happy:Boolean = false; if (!happy) { trace("don't worry, be happy"); // don't worry, be happy }
trace
é executada porque !false
é igual a true
.
Elementos da API relacionados
|| logical OR | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Retorna expression1
, se for false
ou passível de conversão em false
; caso contrário, retorna expression2
. Se você usar uma chamada de função, como expression2
, a função não será chamada se expression1
resultar em false
.
Se ambos os operandos forem do tipo booliano, o resultado será true
se ao menos uma das expressões for true
, ou será false
, se ambas as expressões forem false
, como é mostrado na seguinte tabela:
Expressão | Avalia |
---|---|
|
|
|
|
|
|
|
|
expression1:* —
Um valor de qualquer tipo.
| |
expression2:* —
Um valor de qualquer tipo.
|
* —
Um valor Booliano, quando ambos os operandos são membros do tipo de dados Booliano Caso contrário, o resultado será o valor de qualquer uma das expressões.
|
Exemplo
Como usar este exemplo
O exemplo a seguir usa o operador lógico OR (
||
) em uma instrução if
. A segunda expressão resulta em true
; portanto o resultado final é true
:
var a:Number = 10; var b:Number = 250; var start:Boolean = false; if ((a > 25) || (b > 200) || (start)) { trace("the logical OR test passed"); // the logical OR test passed }
if
é verdadeira ( b > 200
).
O exemplo a seguir demonstra como usar uma chamada de função, já que o segundo operador pode levar a resultados inesperados. Se a expressão à esquerda do operador resultar em true
, o resultado é retornado sem a avaliação da expressão à direita (a função fx2()
não é chamada).
function fx1():Boolean { trace("fx1 called"); return true; } function fx2():Boolean { trace("fx2 called"); return true; } if (fx1() || fx2()) { trace("IF statement entered"); }
Elementos da API relacionados
||= logical OR assignment | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Atribui a expression1
o valor de expression1 || expression2
. Por exemplo, as duas instruções a seguir são equivalentes:
x ||= y; x = x || y;Operandos
expression1:* —
Um valor de qualquer tipo.
| |
expression2:* —
Um valor de qualquer tipo.
|
* —
Um valor Booliano, quando ambos os operandos são membros do tipo de dados Booliano Caso contrário, o resultado será o valor de qualquer uma das expressões.
|
Exemplo
Como usar este exemplo
O exemplo a seguir atribui um valor padrão a uma variável declarada anteriormente, nomeada como
myVar
. Esta técnica se beneficia do fato de que o operador lógico OR ( ||
) retornará o valor de expression1
, se expression1
resultar em true
, caso contrário, retornará o valor de expression2
. Se myVar
já contiver um valor que resulte em true
, myVar
ficará inalterado. No entanto, se myVar
contiver um valor que resulte em false
, como os valores null
, ""
(string vazia) e undefined
, dentre outros, então será atribuído a myVar
o valor "default"
.
myVar ||= "default";
Elementos da API relacionados
% modulo | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Calcula o restante de expression1
dividido por expression2
. Se qualquer um dos operandos for não numérico, o operador de módulo ( %
) tenta convertê-lo para um número.
O sinal do resultado do módulo corresponde ao sinal do dividendo (o primeiro número). Por exemplo, -4 % 3
e -4 % -3
são avaliados como -1
.
expression1:Number —
Um número ou uma expressão que resulta em um número. Uma string que contém apenas caracteres numéricos resulta em um número.
| |
expression2:Number —
Um número ou uma expressão que resulta em um número. Uma string que contém apenas caracteres numéricos resulta em um número.
|
Number —
O resultado da operação aritmética.
|
Exemplo
Como usar este exemplo
O exemplo numérico a seguir usa o operador de módulo (
%
):
trace(12 % 5); // 2 trace(4.3 % 2.1); // 0.0999999999999996 trace(4 % 4); // 0
%
) retorna apenas o restante. O segundo traço retorna 0,0999999999999996, em vez de 0,1 esperado, em razão das limitações da precisão de ponto flutuante na computação binária.
Elementos da API relacionados
%= modulo assignment | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Atribui a expression1
o valor de expression1 % expression2
. As duas instruções a seguir são equivalentes:
x %= y; x = x % y;Operandos
expression1:Number —
Um número ou uma expressão que resulta em um número.
| |
expression2:Number —
Um número ou uma expressão que resulta em um número.
|
Number —
O resultado da operação aritmética.
|
Exemplo
Como usar este exemplo
O exemplo a seguir atribui o valor 4 à variável
a
:
var a:Number = 14; var b:Number = 5; a %= b; trace(a); // 4
Elementos da API relacionados
* multiplication | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Multiplica duas expressões numéricas. Se ambas as expressões são números inteiros, o produto é um número inteiro. Se qualquer uma das expressões ou ambas as expressões são números de pontos flutuantes, o produto é um número de ponto flutuante.
Operandosexpression1:Number —
Um número ou uma expressão que resulta em um número.
| |
expression2:Number —
Um número ou uma expressão que resulta em um número.
|
Number —
Um número inteiro ou um número decimal.
|
Exemplo
Como usar este exemplo
A seguinte instrução multiplica os números inteiros 2 e 3, resultando no número inteiro 6:
trace(2*3); // 6
trace(2.0 * 3.1416); // 6.2832
*= multiplication assignment | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Atribui a expression1
o valor de expression1 * expression2
. Por exemplo, as duas expressões a seguir são equivalentes:
x *= y x = x * yOperandos
expression1:Number —
Um número ou uma expressão que resulta em um número.
| |
expression2:Number —
Um número ou uma expressão que resulta em um número.
|
Number —
O valor de expression1 * expression2 . Se uma expressão não pode ser convertida em um valor numérico, ela retorna NaN (não é um número).
|
Exemplo
Como usar este exemplo
O exemplo a seguir atribui o valor 50 à variável
a
:
var a:Number = 5; var b:Number = 10; trace(a *= b); // 50
c
e d
:
var i:Number = 5; var c:Number = 4 - 6; var d:Number = i + 2; trace(c *= d); // -14
Elementos da API relacionados
:: name qualifier | Operador |
namespace::property namespace::method() namespace::xmlObject.property namespace::xmlObject.@attribute |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Identifica o namespace de uma propriedade, de um método, de uma propriedade XML ou de um atributo XML.
Operandosnamespace:Object —
O namespace de identificação.
| |
propertyName:Object —
A propriedade, o método, a propriedade XML ou o atributo XML a ser identificado.
|
Exemplo
Como usar este exemplo
O exemplo a seguir usa o operador
::
para identificar dois métodos que têm o mesmo nome em dois namespaces diferentes:
public class NamespaceExample extends Sprite { public namespace French; public namespace Hawaiian; public function NamespaceExample() { trace(Hawaiian::hello()); // aloha trace(French::hello()); // bonjour } Hawaiian function hello():String { return "aloha"; } French function hello():String { return "bonjour"; } }
::
para identificar as propriedades XML com namespaces especificados:
var soap:Namespace = new Namespace("http://schemas.xmlsoap.org/wsdl/soap/"); var w:Namespace = new Namespace("http://weather.example.org/forecast"); var myXML:XML = <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"> <soap:Body> <w:forecast xmlns:w="http://weather.example.org/forecast"> <w:city>Quito</w:city> <w:country>Ecuador</w:country> <date>2006-01-14</date> </w:forecast> </soap:Body> </soap:Envelope>; trace(myXML.soap::Body.w::forecast.w::city); // Quito
Elementos da API relacionados
new | Operador |
|
Versões de runtime: | Flash Player 5 |
Cria uma ocorrência a partir de uma ocorrência de classe. O operador new
pode ser usado com uma classe ou uma variável do tipo Classe para criar uma ocorrência de uma classe. O operador new
é frequentemente usado com um objeto de classe para criar uma ocorrência de uma classe. Por exemplo, a instrução new Sprite()
cria uma ocorrência da classe Sprite.
O operador new
também pode ser usado para associar uma classe a um recurso incorporado, que é um objeto externo, como uma imagem, um som ou uma fonte, compilado em um arquivo SWF. Cada recurso incorporado é representado por uma classe exclusiva de ativos incorporados. Para acessar um recurso incorporado, é necessário usar o operador new
para criar uma ocorrência da classe associada. Em seguida, chame as propriedades e os métodos adequados da classe do recurso incorporado para manipular o recurso incorporado.
Se preferir definir classes com objetos Function, em vez da palavra-chave class
, use o operador new
para criar objetos com base em funções do construtor. Não confunda funções de construtor com métodos de construtor de uma classe. Uma função de construtor é um objeto de Função definido como a palavra-chave function
, mas que não é parte de uma definição de classe. Se você usar as funções de construtor para criar objetos, será necessário usar a herança de protótipos, em vez da herança de classe.
constructor:* —
Uma classe, uma função ou uma variável que mantém um valor do tipo Classe.
| |
parameters:* —
Um ou mais parâmetros, separados por vírgulas.
|
Exemplo
Como usar este exemplo
O exemplo a seguir cria a classe
Book
e usa o operador new
para criar os objetos book1
e book2
.
class Book { var bName:String; var bPrice:Number; public function Book(nameParam:String, priceParam:Number){ bName = nameParam; bPrice = priceParam; } } var book1:Book = new Book("Confederacy of Dunces", 19.95); var book2:Book = new Book("The Floating Opera", 10.95); trace(book1); // [object Book]
new
para criar uma ocorrência da classe Matriz, com 18 elementos:
var golfCourse:Array = new Array(18);
Elementos da API relacionados
{} object initializer | Operador |
object = {name1 : value1, name2 : value2,... nameN : valueN} |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Cria um novo objeto e o inicializa com os pares de propriedades name
e value
. A utilização deste operador é semelhante ao uso da sintaxe new Object
e ao preenchimento dos pares de propriedades através do operador de atribuição. O protótipo do objeto recém-criado é genericamente nomeado como objeto Object.
O operador também é utilizado para marcar blocos de código adjacentes associados às instruções e funções de controle de fluxo ( for
, while
, if
, else
, switch
).
object:Object —
O objeto a ser criado.
| |
name1,2,...N:Object —
Os nomes das propriedades.
| |
value1,2,...N:Object —
Os valores correspondentes para cada propriedade name .
|
Object —
Um objeto Object.
|
Exemplo
Como usar este exemplo
A primeira linha do código a seguir cria um objeto vazio usando o operador inicializador de objetos ({}); a segunda linha cria um novo objeto usando uma função de construtor:
var object:Object = {}; var object:Object = new Object();
account
e inicializa as propriedades name
, address
, city
, state
, zip
e balance
, que acompanham valores:
var account:Object = {name:"Adobe Systems, Inc.", address:"601 Townsend Street", city:"San Francisco", state:"California", zip:"94103", balance:"1000"}; for (i in account) { trace("account."+i+" = "+account[i]); }
var person:Object = {name:"Gina Vechio", children:["Ruby", "Chickie", "Puppa"]};
var person:Object = new Object(); person.name = "Gina Vechio"; person.children = new Array(); person.children[0] = "Ruby"; person.children[1] = "Chickie"; person.children[2] = "Puppa";
Elementos da API relacionados
() parentheses | Operador |
(expression1[, expression2]) (expression1, expression2) function(parameter1,..., parameterN) |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Executa uma operação de agrupamento em um ou mais parâmetros, executa uma avaliação sequencial das expressões ou envolve um ou mais parâmetros e os aprova como argumentos para uma função que precede os parênteses.
Uso 1: controla a ordem em que os operadores são executados. Os parênteses substituem a ordem normal anterior e faz com que as expressões entre parênteses sejam avaliadas primeiro. Quando os parênteses são aninhados, o conteúdo dos parênteses internos é avaliado antes do conteúdo dos parênteses externos.
Uso 2: avalia uma série de expressões, separadas por vírgulas, em sequência, e retorna o resultado da expressão final.
Uso 3: envolve um ou mais parâmetros e os aprova para a função que precede os parênteses.
Operandosexpression1:Object —
Uma expressão, que pode incluir números, strings, variáveis ou texto.
| |
expression2:Object —
Uma expressão, que pode incluir números, strings, variáveis ou texto.
| |
function:Function —
A função a ser executada no conteúdo dos parênteses.
| |
parameter1...parameterN:Object —
Uma série de parâmetros a serem executados antes dos resultados são aprovados como argumentos para a função fora dos parênteses.
|
Exemplo
Como usar este exemplo
Uso 1: as instruções a seguir mostram o uso dos parênteses para controlar a ordem em que as expressões são executadas:
trace((2 + 3) * (4 + 5)); // 45 trace(2 + (3 * (4 + 5))); // 29 trace(2 + (3 * 4) + 5); // 19 trace(2 + (3 * 4) + 5); // 19
foo()
e, em seguida, a função bar()
, e retorna o resultado da expressão a + b
:
var a:Number = 1; var b:Number = 2; function foo() { a += b; } function bar() { b *= 10; } trace((foo(), bar(), a + b)); // 23
var today:Date = new Date(); trace(today.getFullYear()); // outputs current year function traceParameter(param):void { trace(param); } traceParameter(2 * 2); // 4
Elementos da API relacionados
( ) parentheses (XML) | Operador |
myXML.(expression) |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Avalia uma expressão em um ECMAScript para construção XML de XML (E4X). Por exemplo, myXML.(lastName == "Smith")
identifica elementos XML com o nome lastName
e o valor "Smith"
. O resultado é um objeto XMLList.
myXML:* —
Um objeto XML ou XMLList.
| |
expression:* —
A expressão que define os elementos correspondentes.
|
XMLList —
O XMLList especificado pelos parênteses.
|
Exemplo
Como usar este exemplo
O exemplo a seguir mostra como os parênteses são usados para identificar elementos e atributos:
var myXML:XML = <employees> <employee id = "42"> <firstName>Joe</firstName> <lastName>Smith</lastName> </employee> <employee id = "43"> <firstName>Susan</firstName> <lastName>Jones</lastName> </employee> <employee id = "44"> <firstName>Anne</firstName> <lastName>Smith</lastName> </employee> </employees>; trace(myXML.employee.(lastName == "Smith").@id.toXMLString()); // 42 // 44 trace(myXML.employee.(Number(@id) > 42).@id.toXMLString()); // 43 // 44
Elementos da API relacionados
/ RegExp delimiter | Operador |
/pattern/flags |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Quando usado antes e depois dos caracteres, indica que os caracteres têm um valor literal e são considerados uma expressão regular (RegExp), e não uma variável, uma string ou outro elemento do ActionScript. Observe, no entanto, que dois caracteres de barra sequenciais ( //
) indicam o início de um comentário.
pattern:String —
Uma string de um ou mais caracteres, definindo o padrão da expressão regular.
| |
flags:String —
Uma sequência de zero ou mais dos seguintes caracteres: g (para o sinalizador global ), i (para o sinalizador ignoreCase ), s (para o sinalizador dotall ), x (para o sinalizador extended ).
|
Exemplo
Como usar este exemplo
O exemplo a seguir usa os caracteres de barra (/) para definir o valor de uma variável do tipo RegExp. É definido o sinalizador
i
para ignorar a diferenciação entre maiúsculas e minúsculas durante a correspondência:
var myRegExp:RegExp = /foo-\d+/i; trace(myRegExp.exec("ABC Foo-32 def.")); // Foo-32
Elementos da API relacionados
=== strict equality | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Testa a igualdade entre duas expressões, mas não realiza conversão de dados automática. O resultado é true
, se ambas as expressões, incluindo seus tipos de dados, forem iguais.
O operador de igualdade restrita ( ===
) se comporta da mesma forma que o operador de igualdade ( ==
) nestes três casos:
- Os valores Number e Boolean são comparados pelo valor. Se tiverem o mesmo valor, serão considerados iguais.
- As expressões das strings serão iguais, se tiverem o mesmo número de caracteres e esses forem idênticos.
- As variáveis que representam objetos, matrizes e funções são comparadas por referência. Duas variáveis serão iguais se fizerem referência ao mesmo objeto, à mesma matriz ou função. Duas matrizes separadas nunca são consideradas iguais, mesmo se tiverem um número idêntico de elementos.
===
) possui duas diferenças do operador de igualdade ( ==
):
- O operador de igualdade restrita executa a conversão automática de dados apenas para tipos de números (Number, int e uint), enquanto o operador de igualdade executa a conversão automática de dados para todos os tipos de dados primitivos.
- Durante a comparação entre
null
eundefined
, o operador de igualdade restrita retornafalse
.
var x:Number = 1
) com objetos primitivos (por exemplo, var x:Number = new Number(1)
). Isto ocorre porque o ActionScript 3.0 remove a diferença entre os valores primitivos e os objetos envoltórias primitivos.
No primeiro caso, as comparações entre os valores primitivos e objetos primitivos que contêm o mesmo valor retorna true
no ActionScript 3.0, mas em versões anteriores retorna false
. Nestas versões, o tipo de dados de um valor primitivo é Boolean, Number ou String, enquanto o tipo de dados de um objeto primitivo é sempre Object. O efeito prático desta diferença será mostrado no código a seguir. Nas versões anteriores do ActionScript, o resultado será false
, porque os tipos de dados dos operandos não são correspondentes. Já no ActionScript 3.0, o resultado será true
, porque os valores primitivos são do tipo Boolean, Number, int, uint ou String, agrupados em um objeto ou não.
var num1:Number = 1; var num2:Number = new Number(1); trace(num1 === num2); // true in ActionScript 3.0, false in ActionScript 2.0
true
no ActionScript 3.0, mas resultam em false
em versões anteriores.
var num1:Number = new Number(1); var num2:Number = new Number(1); trace(num1 == num2); // true in ActionScript 3.0, false in ActionScript 2.0 trace(num1 === num2); // true in ActionScript 3.0, false in ActionScript 2.0
false
para os operadores de igualdade e de igualdade restrita. No entanto, no ActionScript 3.0, ambas as variáveis pertencem ao tipo de dados Number, sendo, portanto, comparadas por valor, e o resultado é true
para os operadores de igualdade e de igualdade restrita.
Operandosexpression1:Object —
Um número, uma string, um valor Booleano, uma variável, um objeto, uma matriuz ou uma função.
| |
expression2:Object —
Um número, uma string, um valor Booleano, uma variável, um objeto, uma matriuz ou uma função.
|
Boolean —
O resultado Booliano da comparação.
|
Exemplo
Como usar este exemplo
O exemplo a seguir mostra que a igualdade restrita (
===
) funciona da mesma forma que a igualdade ( ==
), quando o valor e os tipos de dados são correspondentes:
var string1:String = "5"; var string2:String = "5"; trace(string1 == string2); // true trace(string1 === string2); // true
==
) faz:
// The equality (==) operator converts 5 to "5", but the strict equality operator does not var string1:String = "5"; var num:Number = 5; trace(string1 == num); // true trace(string1 === num); // false
var num:Number = 1; var bool:Boolean = true; trace(num == bool); // true trace(num === bool); // false
var num1:Number = 1; var num2:int = 1; var num3:uint = 1; trace(num1 === num2); // true trace(num1 === num3); // true
null
e undefined
não iguais, mas o operador de igualdade os considera iguais:
trace(null == undefined); // true trace(null === undefined); // false
Elementos da API relacionados
!== strict inequality | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Testes para o oposto exato do operador de igualdade restrita ( ===
). O operador de desigualdade restrita funciona da mesma maneira que o operador de desigualdade, exceto que apenas os tipos de dados int e uint são convertidos.
Se expression1
for igual a expression2
, e seus tipos de dados forem iguais, o resultado será false
.
O operador de desigualdade restrita ( !==
) é o mesmo do operador de desigualdade ( !=
), de três maneiras:
- Os valores Number e Boolean são comparados pelo valor. Se tiverem o mesmo valor, serão considerados iguais.
- As expressões das strings serão iguais, se tiverem o mesmo número de caracteres e esses forem idênticos.
- As variáveis que representam objetos, matrizes e funções são comparadas por referência. Duas variáveis serão iguais se fizerem referência ao mesmo objeto, à mesma matriz ou função. Duas matrizes separadas nunca são consideradas iguais, mesmo se tiverem um número idêntico de elementos.
!=
) de duas maneiras:
- O operador de desigualdade restrita (
!==
) executa a conversão automática de dados apenas para tipos numéricos, Number, int, uint, enquanto o operador de desigualdade (!=
) executa a conversão automática de dados para todos os tipos de dados primitivos. - Durante a comparação entre
null
eundefined
, o operador de desigualdade restrita (!==
) retornatrue
.
expression1:Object —
Um número, uma string, um valor Booleano, uma variável, um objeto, uma matriuz ou uma função.
| |
expression2:Object —
Um número, uma string, um valor Booleano, uma variável, um objeto, uma matriuz ou uma função.
|
Boolean —
O resultado Booliano da comparação.
|
Exemplo
Como usar este exemplo
Os comentários no código a seguir mostram o valor retornado de operações que usam os operadores de igualdade (
==
), igualdade restrita ( ===
) e desigualdade restrita ( !==
):
var s1:String = "5"; var s2:String = "5"; var s3:String = "Hello"; var n:Number = 5; var b:Boolean = true; trace(s1 == s2); // true trace(s1 == s3); // false trace(s1 == n); // true trace(s1 == b); // false trace(s1 === s2); // true trace(s1 === s3); // false trace(s1 === n); // false trace(s1 === b); // false trace(s1 !== s2); // false trace(s1 !== s3); // true trace(s1 !== n); // true trace(s1 !== b); // true
Elementos da API relacionados
" string delimiter | Operador |
"text" |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Quando usado antes e depois dos caracteres, indica que os caracteres têm um valor literal e são considerados uma string, e não uma variável, um valor numérico nem outro elemento do ActionScript.
Operandostext:String —
Uma string de zero ou mais caracteres.
|
Exemplo
Como usar este exemplo
O exemplo a seguir usa aspas (") para indicar que o valor da variável
yourGuess
é a sequência de caracteres literal "Prince Edward Island"
e não o nome da variável.
var yourGuess:String = "Prince Edward Island"; submit_btn.onRelease = function() { trace(yourGuess); }; // Prince Edward Island
Elementos da API relacionados
- subtraction | Operador |
|
Versões de runtime: | Flash Player 9 |
Usado para negar ou subtrair.
Uso 1: quando usado para negar, o operador inverte o sinal de uma expressão numérica.
Quando usado para subtrair, o operador executa uma subtração aritmética em duas expressões numéricas, subtraindo expression2
de expression1
. Quando ambas as expressões são números inteiros, a diferença é um número inteiro. Quando qualquer uma das expressões ou ambas as expressões são números de pontos flutuantes, a diferença é um número de ponto flutuante.
expression1:Number —
Um número ou uma expressão que resulta em um número.
| |
expression2:Number —
Um número ou uma expressão que resulta em um número.
|
Number —
Um número inteiro ou um número decimal.
|
Exemplo
Como usar este exemplo
Uso 1: a instrução a seguir inverte o sinal da expressão 2 + 3:
trace(-(2 + 3)); // -5
trace(5 - 2); // 3
A instrução a seguir subtrai o número de ponto flutuante 1,5 do número de ponto flutuante 3,25:
trace(3.25 - 1.5); // 1.75
-= subtraction assignment | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Atribui a expression1
o valor de expression1 -expression2
. Por exemplo, as duas instruções a seguir são equivalentes:
x -= y ; x = x - y;
As expressões em strings devem ser convertidas em números; caso contrário, o resultado será NaN
(não um número).
expression1:Number —
Um número ou uma expressão que resulta em um número.
| |
expression2:Number —
Um número ou uma expressão que resulta em um número.
|
Number —
O resultado da operação aritmética.
|
Exemplo
Como usar este exemplo
O exemplo a seguir utiliza o operador de atribuição de subtração (
-=
) para subtrair 10 de 5 e atribuir o resultado à variável x
:
var x:Number = 5; var y:Number = 10; x -= y; trace(x); // -5
var x:String = "5"; var y:String = "10"; x -= y; trace(x); // -5
Elementos da API relacionados
: type | Operador |
[modifiers] var variableName:type function functionName():type { ... } function functionName(parameter1:type, ..., parameterN:type) [:type]{ ... } |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Usado para atribuir um tipo de dados; este operador especifica o tipo de variável, o tipo de retorno de função ou o tipo de parâmetro de função. Quando usado em uma declaração de variável ou atribuição, este operador especifica o tipo de variável; quando usado em uma declaração de função ou definição, este operador especifica o tipo de retorno da função; quando usado com um parâmetro de função em uma definição de função, este operador especifica o tipo de variável esperado para esse parâmetro.
A verificação de tipo ocorre sempre em tempo de execução. No entanto, quando o compilador está definido em modo restrito, todos os tipos também são verificados em tempo de compilação, e os erros são gerados quando ocorre uma não correspondência. As não correspondências podem ocorrer durante operações de atribuição, chamadas de função e cancelamento de referência de membros da classe, usando o operador ponto ( .
).
Tipos que podem ser usados incluem todos os tipos de objetos nativos, classes e interfaces que você define e void
. Os tipos nativos reconhecidos são Boolean, Number, int, uint e String. Todas as classes internas também são suportadas como tipos nativos.
Se você não atribuir um tipo de dados, a variável, o valor de retorno de função ou o parâmetro de função serão considerados sem tipo, o que significa que o valor pode ser de qualquer tipo de dados. Se você desejar tornar clara a sua intenção de usar um valor sem tipo, poderá usar o caractere de asterisco (*) como a anotação de tipo. Quando usado como uma anotação de tipo, o caractere de asterisco é o equivalente a deixar uma variável, um tipo de retorno de função ou um parâmetro de função sem tipo.
OperandosvariableName:* —
Um identificador para uma variável.
| |
type:* —
Um tipo de dados nativo, nome de classe que você definiu ou nome de interface.
| |
functionName:Function —
Um identificador para uma função.
| |
parameter:* —
Um identificador para um parâmetro de função.
|
Exemplo
Como usar este exemplo
Uso 1: o exemplo a seguir declara uma variável pública denominada
userName
, cujo tipo é String, e atribui a ela uma sequência de caracteres vazia:
var userName:String = "";
randomInt()
, que especifica o tipo de retorno como int:
function randomInt(integer:int):int { return Math.round(Math.random()*integer); } trace(randomInt(8));
squareRoot()
, que usa um parâmetro denominado val
do tipo Number e retorna a raiz quadrada de val
, também do tipo Number:
function squareRoot(val:Number):Number { return Math.sqrt(val); } trace(squareRoot(121));
Elementos da API relacionados
typeof | Operador |
|
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Avalia expression
e retorna uma string especificando o tipo de dados da expressão. O resultado é limitado a seis valores possíveis de sequências de caracteres: boolean
, function
, number
, object
, string
e xml
. Se você aplicar este operador a uma ocorrência de uma classe definida pelo usuário, o resultado é a string object
. O operador typeof
é incluído para compatibilidade retroativa. Use o operador is
para verificar a compatibilidade de tipos.
expression:Object —
Um objeto a ser avaliado.
|
String —
Uma representação de string do tipo da expression . A tabela a seguir mostra os resultados do operador typeof , em cada tipo de expressão.
|
Exemplo
Como usar este exemplo
O exemplo a seguir mostra o resultado do uso de
typeof
em vários objetos e valores.
trace(typeof Array); // object trace(typeof Date); // object trace(typeof 3); // number
new
para criar um objeto. Isto é diferente nas versões anteriores do ActionScript, nas quais o operador typeof
retorna object
para a variável b
:
var a:String = "sample"; var b:String = new String("sample"); trace(typeof a); // string trace(typeof b); // string
Elementos da API relacionados
void | Operador |
|
Versões de runtime: | Flash Player 9 |
Avalia uma expressão e, em seguida, descarta seu valor, retornando undefined
. O operador void
é usado frequentemente em comparações que utilizam o operador ==
para testar valores indefinidos.
expression:Object —
Uma expressão a ser avaliada.
|
* —
O valor undefined .
|
< > XML literal tag delimiter | Operador |
myXML= <{tagName} {attributeName} = {attributeValue}>{content}{tagName}> |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9 |
Define uma marca XML em um XML literal. Use a barra (/) para definir a marca de fechamento.
OperandosmyXML:* —
Um objeto XML ou XMLList.
| |
tagName:* —
Uma expressão que resulta no nome de uma marca XML.
| |
attributeName:* —
Uma expressão que resulta no nome de um atributo XML.
| |
attributeValue:* —
Uma expressão que resulta no valor de um atributo XML.
| |
content:* —
Uma expressão que resulta no conteúdo de uma marca XML.
|
Exemplo
Como usar este exemplo
O exemplo a seguir mostra como usar os operadores
<
and >
durante a definição de um XML literal:
var x:XML = <item id= "324">cola</item>;
Elementos da API relacionados
Wed Jun 13 2018, 11:29 AM Z