Visualizzazione dei risultati da 1 a 8 su 8

Discussione: and in javascript

  1. #1

    and in javascript

    dubbio !

    ma and in javascript è || ?

  2. #2
    Reale_Augello
    Guest

    No...

    ... quello è l'OR.
    L'AND è &&.

    Ciao !

  3. #3
    nosferatu_net
    Guest
    Per completezza:
    and &&
    or ||
    bitwise and &
    bitwise or |

    Cosa sono i bitwise?
    In pratica fanno l'operazione bit per bit, come sarebbe legittimo aspettarsi.
    In genere le operazioni logiche si fanno con i booleani, che vengono rappresentati proprio con 1 bit, quindi il risultato non cambia.

    Perché allora esistono i bitwise?
    Anche per un altro (utile) motivo: i bitwise eseguono obbligatoriamente tutti i rami, mentre gli operatori "standard" troncano in automatico i rami inutili.

    Un esempio pratico:
    if (miaVariabile && miaFunzione())
    ...

    se miaVariabile è "false" la miaFunzione non verrà assolutamente eseguita perché inutile alla determinazione del risultato, quindi se faceva alcune operazioni prima di ritornare true o false, se miaVariabile è "false" non le fa.

    Che io sappia tutti i principali linguaggi moderni usano questa feature, tanto che è buona programmazione, in una lista di condizioni in &&, di piazzare a sinistra quelle che hanno maggior probabilità di essere false.

  4. #4
    Reale_Augello
    Guest

    ...

    Originariamente inviato da nosferatu_net
    Per completezza:
    ...
    :sborone:


  5. #5
    nosferatu_net
    Guest

    Re: ...

    Originariamente inviato da Reale_Augello
    :sborone:
    Considerala una "Nosferatu's pillola"!

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    633
    ma..."secondo me" gli operatori bitwise servono per effettuare le operazioni di AND OR e XOR (e shift) sui bit. =)
    Le principali azioni che si svolgono con questi operandi sono quelli di annullare o attivare particolari insiemi di bit...

    ad esempio mi viene in mente un uso che se ne fa in C (e simili) cioè quello di accumulare grazie all'operatore | delle costanti...non so ad esempio per definire le proprietà di una finestra (esempio d'immaginazione) ci può essere un parametro che accetta un long e magari si passa:

    ..., MINIMIZE_BUTTON | MAXIMIZE_BUTTON ,...

    per attivare entrambi i bottoni (quelle sono delle costanti).
    Mi sa che ho preso la tangenziale....:tongue:
    vabè spero di essermi spiegato.
    ciauzzz
    Alcuni miei articoli in PRO.HTML.IT: JavaScript | DHTML | DOM
    Sviluppo : wedev | forum

  7. #7
    nosferatu_net
    Guest
    Io ho capito, però io magari sono malato quanto te.
    Sei malato, perché secondo me sono abbastanza finiti i tempi di questo tipo di programmazione (che, per inciso, non ho vissuto).

    Oramai l'utilità di avere 32 booleane diverse in 4 byte di memoria è venuta meno, anche perché il prezzo da pagare in termini di leggibilità è piuttosto alto.

    Io per questo motivo non li ho mai usati, anche se so che sono nati per questo.
    Li uso esclusivamente quando mi serve essere sicuro che entrambi i membri (che valutano a booleane) vengano eseguiti, quindi l'esempio che facevo sopra.

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    633
    Originariamente inviato da nosferatu_net
    Io ho capito, però io magari sono malato quanto te.
    Sei malato, perché secondo me sono abbastanza finiti i tempi di questo tipo di programmazione (che, per inciso, non ho vissuto).

    Oramai l'utilità di avere 32 booleane diverse in 4 byte di memoria è venuta meno, anche perché il prezzo da pagare in termini di leggibilità è piuttosto alto.

    Io per questo motivo non li ho mai usati, anche se so che sono nati per questo.
    Li uso esclusivamente quando mi serve essere sicuro che entrambi i membri (che valutano a booleane) vengano eseguiti, quindi l'esempio che facevo sopra.
    ma non credo che siano poi così finiti quei tempi...dipende da cosa programmi
    In particolare l'esempio che facevo non era poi di cosi grande immaginazione, ad esempio se programmi in C con le Win32 API, e vuoi creare la più semplice finestra windows...beh di costanti "accorpate insieme" come nell'esempio che facevo, ne vedi a decine...
    Per la leggibilità invece non trovo che creino grossi problemi, anzi sono anche abbastanza esplicite (se le costanti sono dichiarate bene)

    è ovvio che ci vuole più dimestichezza che con il "normale codice", ma è questione di abitudine...

    ad esempio anche in js mi è capitato di vedere alle volte cose come:

    Ycentro = Ytop + Height>>2

    e penso che l'unico motivo che giustifichi sto codice sia l'abitudine...

    Io ancora st'abitudine cmq non ce l'ho
    ciauzzz
    Alcuni miei articoli in PRO.HTML.IT: JavaScript | DHTML | DOM
    Sviluppo : wedev | forum

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.