Alternar instrução
Quando o valor da expressão de especificado corresponde a um rótulo, permite a execução de uma ou mais instruções.
switch (expression) {
case label1 :
[statementlist1]
[break;]
[ ...
[ case labelN :
[statementlistN]
[break;] ] ]
[ default :
[statementlistDefault]]
}
Argumentos
expressão
Obrigatório. A expressão a ser avaliada.Label1,..., labelN
Obrigatório. Um identificador a ser correspondida expressão. Se rótulo === expressão, execução inicia com a lista de instrução imediatamente após os dois pontos e continua até que ele encontra tanto um quebra instrução, que é opcional, ou o fim da Alternar instrução.statementlist1,..., statementlistN, statementlistDefault
Opcional. Uma ou mais instruções a ser executada.
Comentários
Use o padrão cláusula para fornecer uma instrução a ser executada se nenhuma etiqueta valores correspondências expressão. Podem aparecer em qualquer lugar dentro do switch Bloco de código.
Zero ou mais rótulo blocos podem ser especificados. Se nenhum rótulo corresponde ao valor de expressãoe um padrão caso não for fornecido, não há instruções são executadas.
O fluxo de execução por meio de uma instrução switch da seguinte maneira:
Avaliar expressão e examine rótulo na ordem até encontrar uma correspondência.
Se um rótulo valor igual a expressão, executar a sua lista de instrução que o acompanha.
Continuar a execução até que uma quebra instrução for encontrada, ou o switch extremidades de instrução. Isso significa que vários rótulo blocos são executados se um quebra a instrução não é usada.
Se nenhum rótulo é igual a expressão, vá para o padrão case. Se não houver nenhum padrão caso, vá para a última etapa.
Continuar a execução em que a instrução após o final da switch Bloco de código.
Exemplo
O seguinte ASP.NET exemplo testa um objeto para o tipo. Nesse caso, apenas um tipo é usado, mas você poderá ver claramente como a função funciona com outros tipos de objeto.
<%@ language="jscript" %>
<%
var d = new Number();
function MyObjectType(obj : Object) : String {
switch (obj.constructor){
case Date:
return "Object is a Date.";
break;
case Number:
return "Object is a Number.";
break;
case String:
return "Object is a String.";
break;
default:
return "Object is unknown.";
}
}
Response.Write(MyObjectType(d));
%>