2012-04-01 2 views
7

Ho provato questo in giada servito da espresso ma ho ottenuto "identificatore inatteso" come errore.La sintassi di jade supporta un'istruzione switch?

- switch(myvar) 
    - case: "0" 
     span First Case 
      break 
    - case: "2" 
     span Second Case 
      break 
    - case: "3" 
     span Third Case 
      break 
    - case: "4" 
     span Fourth Case 
      break 

Ero curioso di sapere qual è la sintassi di un'istruzione switch, se ce n'è una.

Aggiornamento: Giada, non espresso.

+0

Intendevi * "** node.js ** ha un'istruzione switch" *? – Joseph

risposta

18

EDIT

Questa domanda è apparentemente su Jade invece.

Ma la risposta è ancora sì :).

Ma si chiama case:

Da the docs

case friends 
    when 0 
     p you have no friends 
    when 1 
     p you have a friend 
    default 
     p you have #{friends} friends 

Javascript deve un'istruzione switch.

switch(variable){ 
    case 1: 
     // do something 
     break; 
    case 2: 
     // do something else 
     break; 
    // and so forth 
    default: 
     // do something if nothing 
     break; 
} 

Essendo che Express.js gira in Node.js che è solo JavaScript - sì. Express ha un'istruzione switch poiché JavaScript ha un'istruzione switch. (Anche CoffeeScript ha un switch che "compila" fino a un JavaScript switch comunicato.)

MDN reference: switch statement

sembra che la sintassi è incasinato lì - Cosa sono quelle "-" caratteri? Manca anche il : dalla fine di ciascuna istruzione case e non si è break dopo ogni caso, il che significa che il codice per TUTTI i casi verrà SEMPRE eseguito indipendentemente dalla condizione.

+0

È jade - vedi aggiornamento. –

+0

Interessante ha appena chiamato "caso" –