Visualizzazione dei risultati da 1 a 3 su 3

Discussione: x=-(x=0)

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    583

    x=-(x=0)

    ciao

    per avere un pulsante tipo musica si / musica no in VBScript usavo questa espressione:
    x = -(x=0) che alternava i valori 1 e 0 ad ogni passaggio (dopo aver dichiarato x=1)
    e poi: se x = 1 fai una cosa, altrimenti ...

    in javascript non funziona. Perché?

    Non è molto importante. Ci sono altri modi per fare ciò.
    Ma, come qualcuno mi ha recentemente fatto osservare: c'è sempre da imparare!
    rudyF

  2. #2
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Ciao, solitamente per situazioni del genere si utilizza una variabile booleana (true/false).
    Per commutare lo stato della variabile puoi usare l'operatore "!" (NOT booleano), in questo modo:
    codice:
    x=!x;
    Cioè, dopo questa operazione, x sarà la negazione di se stessa. Il risultato è sempre un valore booleano.

    Tieni presente che x dovrà comunque essere dichiarata precedentemente, altrimenti otterresti un errore.

    Ancora, tieni presente che valori come undefined, null, NaN, "" (stringa vuota), 0, in questo caso saranno considerati come il valore false.
    Esempi:
    codice:
    var x;          console.log(x); // -> undefined
    x=!x;           console.log(x); // -> true
    
    x=null;         console.log(x); // -> null
    x=!x;           console.log(x); // -> true
    
    x=10/"pippo";   console.log(x); // -> NaN
    x=!x;           console.log(x); // -> true
    
    x="";           console.log(x); // -> ""
    x=!x;           console.log(x); // -> true
    
    x=0;            console.log(x); // -> 0
    x=!x;           console.log(x); // -> true
    
    x=false;        console.log(x); // -> false
    x=!x;           console.log(x); // -> true

    Se ti interessa comunque ottenere un valore numerico, puoi usare la funzione Number() o il segno "+" (che in questo caso produce lo stesso effetto):
    codice:
    // così
    x=Number(!x);
    
    // o cosà
    x=+!x;

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    583
    grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.