Compartilhar via


Solucionando problemas de seus Scripts.

Todas as linguagens de programação incluem possíveis armadilhas e surpresas para usuários inexperientes e experientes. Aqui estão algumas áreas potenciais de problema que você pode encontrar ao escrever JScript scripts.

Erros de sintaxe

Porque a sintaxe é muito mais rígida em linguagens que em natural de linguagens de programação, é importante prestar estrita atenção aos detalhes quando você escrever scripts. Se, por exemplo, você pretende que um determinado parâmetro seja uma seqüência de caracteres, você encontrará problemas se você esquecer de colocá-lo entre aspas.

Ordem de interpretação de Script

Em uma página da Web, JScript interpretação depende HTML análise processo. do navegador Um script de <HEAD> marca é interpretada antes do texto dentro de <BODY> marca. Conseqüentemente, os objetos são criados no <BODY> marca não existem quando o navegador analisa <HEAD> elemento e não pode ser manipulado pelo script.

ObservaçãoObservação

Esse comportamento é específico para o Internet Explorer. ASP e do WSH têm modelos de execução diferente (como faria com outros hosts).

Coerção de tipo automático

JScripté uma linguagem rigidez com coerção automática. Conseqüentemente, apesar do fato de ter diferentes tipos de valores não são estritamente iguais, as expressões no exemplo a seguir são true.

"100" == 100;
false == 0;

Para verificar que o tipo e o valor são os mesmos, use o operador de igualdade estrita, ===. A seguir retornam false:

"100" === 100;
false === 0;

Precedência de operador

A ordem de execução da operação durante a avaliação de uma expressão depende mais a precedência do operador que na ordem dos operadores na expressão. Assim, no exemplo a seguir, a multiplicação é efetuada antes da subtração, mesmo que o operador de subtração aparecerá antes do operador de multiplicação na expressão.

theRadius = aPerimeterPoint - theCenterpoint * theCorrectionFactor;

Para obter mais informações, consulte Precedência de operador.

Usando um loop for... em Loops com objetos

Quando um script as etapas através das propriedades de um objeto com um for…in loop, a ordem na qual os campos do objeto são atribuídos à variável de contador de loop não são necessariamente previsíveis ou controláveis. Além disso, a ordem pode ser diferente em diferentes implementações da linguagem. Para obter mais informações, consulte loop for... na instrução.

com a palavra-chave

Embora o with palavra-chave é conveniente para lidar com propriedades que já existem um objeto especificado, ele não pode ser usado para adicionar propriedades para um objeto. Para criar novas propriedades em um objeto, você deve se referir ao objeto especificamente. Para obter mais informações, consulte com instrução.

Esta palavra-chave

Embora o Este palavra-chave existe dentro da definição de um objeto, você normalmente não é possível usar Este ou palavras-chave semelhantes para se referir a execução atualmente funcionam se a função não é uma definição de objeto. Se a função deve ser atribuído a um objeto como um método, um script pode usar o Este palavra-chave dentro da função para se referir ao objeto. Para obter mais informações, consulte Esta instrução..

Escrevendo um Script que escreve um Script no Internet Explorer ou do ASP.NET

O </SCRIPT> marca finaliza o script atual se encontra o intérprete-lo. Para exibir "</SCRIPT>" propriamente dito, escrever isso como seqüências de caracteres de dois ou mais, por exemplo, "< / SCR" e "IPT >", que o script pode então concatenar na instrução que grava.

Referências de janela implícito no Internet Explorer

Como mais de uma janela pode ser aberta simultaneamente, qualquer referência à janela que está implícita aponta para a janela atual. Para outras janelas, você deve usar uma referência explícita.

Consulte também

Tarefas

Escrever o código de JScript com Visual Studio

Conceitos

Depuração JScript com Visual Studio

Outros recursos

Escrita, compilação e depuração de código de JScript