Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1

    Oridine di precedenza in javascript

    Salve a tutti,

    Conosco pochissimo javascript e devo fare un porting in un altro linguaggio.

    Sto cercando di capire un codice scritto in modo molto compatto/criptico per me.

    Qualcuno puo' riscriverlo in modo più leggibile e spiegarmi come vengono eseguite le varie fasi?

    Questo e' solo un estratto.

    codice:
    F="abcdefghi:dddeee:www"
    w=x=500
    t=4
    for(i=0;i<32;i+=X%8==X&&Y%8==Y&&F[X|Y<<3]<':'?w:.5)  X=14*t-i*Math.sin(T=t+x/w-.5)+4 , Y=14*t-i*Math.sin(T)+4 ,  c.getContext('2d').fillRect(x,i,1-i/32,3);

    inoltre penso di non conoscere tutti i vari operatori. , in particolare non riesco a capire come si incrementa la variabile "i" e come avvengono le operazioni.

    Questa e' la parte che mi serve capire:
    codice:
    i+=X%8==X&&Y%8==Y&&F[X|Y<<3]<':'?w:.5


    altra domanda: Ma se le variabili non sono ancora inizializzate quanto valgono?

    In alternativa esiste un metodo per fare una specie di debug?

    Francesco Poscetti aka einstein1969

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Ciao e benvenuto Francesco
    A) Senza sapere che linguaggio è difficile tradurlo, oltretutto non è detto che sia possibile.
    B) Una variabile non inizializzata (o dichiarata) non vale nulla, se è dichiata vale il valore dichiarato.
    C) Esiste firebug da installare sui browser (chrome, firefox, safari) ma non so se fa al caso




    P.S. Prova a spiegare in modo semplice ma preciso cosa devi fare.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Quote Originariamente inviata da cavicchiandrea Visualizza il messaggio
    Ciao e benvenuto Francesco
    A) Senza sapere che linguaggio è difficile tradurlo, oltretutto non è detto che sia possibile.
    B) Una variabile non inizializzata (o dichiarata) non vale nulla, se è dichiata vale il valore dichiarato.
    C) Esiste firebug da installare sui browser (chrome, firefox, safari) ma non so se fa al caso




    P.S. Prova a spiegare in modo semplice ma preciso cosa devi fare.
    Ciao Andrea e grazie per aver risposto.

    In realtà e' un esercizio che faccio per mantenermi allenato e per migliorarmi.
    Il linguaggio in cui devo tradurlo te lo dico ma rimarrai sorpreso. Voglio tradurlo in batch dos.

    Mi serve sapere com'e' l'ordine di precedenza e come interagiscono i diversi tipi di javascript tra loro.

    Francesco Poscetti

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Quote Originariamente inviata da einstein1969 Visualizza il messaggio
    Ciao Andrea e grazie per aver risposto.

    In realtà e' un esercizio che faccio per mantenermi allenato e per migliorarmi.
    Il linguaggio in cui devo tradurlo te lo dico ma rimarrai sorpreso. Voglio tradurlo in batch dos.
    Non posso esserti d'aiuto (è ho forti dubbi che altri utenti conoscano il linguaggio menzionato) non conosco batch dos. Come dicevo non tutti i linguaggi sono traducibili mi sa che questo è uno di quelli
    Mi serve sapere com'e' l'ordine di precedenza e come interagiscono i diversi tipi di javascript tra loro.

    Francesco Poscetti
    Diversi tipi di javascript!!! Credevo fosse uno solo linguaggio ma applicabile a diversi ambienti, programmazione o web, ma probabilmente ho capito male il concetto
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Quote Originariamente inviata da cavicchiandrea Visualizza il messaggio
    Non posso esserti d'aiuto (è ho forti dubbi che altri utenti conoscano il linguaggio menzionato) non conosco batch dos. Come dicevo non tutti i linguaggi sono traducibili mi sa che questo è uno di quelli
    Diversi tipi di javascript!!! Credevo fosse uno solo linguaggio ma applicabile a diversi ambienti, programmazione o web, ma probabilmente ho capito male il concetto
    Scusami, mi sono spiegato male. Non ho diversi javascript, parlavo dei tipi delle variabili di javascript. Nel codice che ho esposto ci sono operatori che operano su tipi diversi intrecciandosi tra di loro.

    Il problema che ho e' nel comprendere il linguaggio di partenza, se e' un problema possiamo scegliere un altro linguaggio di arrivo (c, pascal). In realtà mi serve la mano di un bravo programmatore javascript.

    Inoltre ti assicuro che con buona probabilità e' traducibile. Ho tradotto da altro javascript piu' semplice senza problemi.

    E' proprio dura capire quel pezzo di javascript come viene interpretato...

    Grazie comunque del tuo interessamento.

  6. #6
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    E' sicuramente come dici tu traducibile, forse perché qui le discussioni javascript vertono lato web (browser) al 99,99%, prova a chiedere ai moderatori del forum di programmazione se la discussione può migrare da loro.
    Qui secondo me hai poche speranze
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  7. #7
    Grazie Andrea, mi sono attivato per spostarla...

  8. #8
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    per me sta bene qui

  9. #9
    Quote Originariamente inviata da Xinod Visualizza il messaggio
    per me sta bene qui
    Ok, grazie.

  10. #10
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Ciao e benvenuto.
    Riguardo gli operatori posso consigliarti di dare uno sguardo a qualche guida di base.
    Una tra tante: http://www.html.it/pag/15220/operatori1/

    Qui trovi un riepilogo: http://msdn.microsoft.com/it-it/libr...=vs.94%29.aspx

    Per la precedenza dei vari operatori puoi vedere qui:
    http://msdn.microsoft.com/it-it/libr...=vs.94%29.aspx

    Per quanto riguarda la parte di script che hai indicato, posso giusto darti il riferimento degli operatori utilizzati:
    codice:
    i+=X%8==X&&Y%8==Y&&F[X|Y<<3]<':'?w:.5
    += Operatore di assegnazione e addizione.
    x+=y è lo stesso che x=x+y
    a?b:c Operatore condizionale ternario. Se la condizione (a) è vera allora viene restituito (b), altrimenti (c) se è falsa
    % Operatore modulo (o resto della divisione)
    == Test di uguaglianza
    && AND logico
    [] Accesso ai caratteri di una stringa (come per le voci di un array). In questo caso è lo stesso che il metodo charAt()
    | OR logico bit per bit (Bitwise OR)
    << Spostamento a sinistra bit per bit (Bitwise Left Shift)
    < Operatore di confronto "Minore di". In questo caso sarà un confronto tra stringhe (o meglio, tra due caratteri).

    Per chiarire meglio puoi raggruppare le varie parti in questo modo:
    codice:
    i+=(condizione dell'operatore ternario)?w:.5
    Questa è quindi la condizione:
    codice:
    X%8==X&&Y%8==Y&&F[X|Y<<3]<':'
    che può essere scandita in questo modo:
    codice:
    (X%8==X) && (Y%8==Y) && (F[X|Y<<3]<':')
    Questo è chiaramente un punto di partenza, poi vedi tu come proseguire per la conversione in altro linguaggio.
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

Tag per questa discussione

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.