Visualizzazione dei risultati da 1 a 10 su 10

Discussione: preload da copiare

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    34

    preload da copiare

    Non capisco perché se copio pari pari questo preload (http://flash-mx.html.it/movies/view_movie.asp?id=856#) non funziona e mi ritorna quest'errore:

    Tipo non corrispondente.
    cent = parseInt((car*1)/tot);

    Totale errori ActionScript: 3 Errori segnalati: 3

    Io utilizzo Flash8... è questo il problema?

  2. #2
    Utente di HTML.it L'avatar di gobbo89
    Registrato dal
    Jun 2006
    Messaggi
    816
    Sostituisci
    cent = parseInt((car*1)/tot);

    con

    cent = Math.round((car*1)/tot);


  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    34
    Bene, un errore è stato annullato. Grazie mille.

    Adesso mi dà questi due:

    **Errore** Scena=Scena 1, livello=controller, fotogramma=1:Linea 3: Tipo non corrispondente.
    perc = parseInt((car*100)/tot);

    **Errore** Scena=Scena 1, livello=controller, fotogramma=1:Linea 4: Tipo non corrispondente.
    decim = parseInt((car*10)/tot);

    Totale errori ActionScript: 2 Errori segnalati: 2

  4. #4
    idem come sopra
    dai diamanti non nasce niente dal letame nascono i fior
    UNGAWA! Tiki Bar
    Villa Camerini

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    34
    FUNZIOOOONAAAAAAAA!!!!!!!!!

    Siete grandissimiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii!!!!!!!!!

    Ma qual è la differenza tra Math.round e parseInt???

  6. #6
    Utente di HTML.it L'avatar di gobbo89
    Registrato dal
    Jun 2006
    Messaggi
    816
    Originariamente inviato da cinqua
    Ma qual è la differenza tra Math.round e parseInt???
    Dalla guida di flash:

    Math.round

    Disponibilità

    Flash Player 5. In Flash Player 4, i metodi e le proprietà dell'oggetto Math sono emulati per approssimazione e la loro accuratezza può risultare inferiore rispetto alle funzioni matematiche non emulate supportate da Flash Player 5.

    Uso

    Math.round(x);

    Parametri

    x Un numero.

    Valori restituiti

    Un numero.

    Descrizione

    Metodo; arrotonda per eccesso o per difetto il valore del parametro x al numero intero più vicino e restituisce il valore corrispondente.

    __________________________________________________ ___________________________

    parseInt

    Disponibilità

    Flash Player 5.

    Uso

    parseInt(espressione, [radice])

    Parametri

    espressione Stringa da convertire in un numero intero.

    radice Numero intero che rappresenta la radice (base) del numero da analizzare sintatticamente. I valori consentiti sono compresi tra 2 e 36. Questo parametro è opzionale.

    Valori restituiti

    Nessuno.

    Descrizione

    Funzione; converte una stringa in un numero intero. Se non è possibile convertire la stringa specificata nei parametri in un numero, la funzione restituisce NaN. Se la stringa inizia con 0 o se si specifica una radice di 8 il numero viene interpretato come numero ottale. Le stringhe che iniziano con 0x vengono interpretate come numeri esadecimali. Gli spazi vuoti prima di numeri interi validi vengono ignorati, così come i caratteri finali non numerici.

    Esempio

    Gli esempi seguenti descrivono l'uso di parseInt per valutare diversi tipi di numeri.

    parseInt("3,5")

    // Restituisce 3,5

    parseInt("bar")
    // Restituisce NaN

    parseInt("4foo")
    // Restituisce 4

    Di seguito sono riportati alcuni esempi di conversione esadecimale:

    parseInt("0x3F8")
    // Restituisce 1016

    parseInt("3E8", 16)
    // Restituisce 1000

    Di seguito sono riportati alcuni esempi di conversione binaria:

    parseInt("1010", 2)

    // Restituisce 10 (la rappresentazione decimale del numero binario 1010)

    Di seguito viene riportato un esempio di analisi di un numero ottale (in questo caso il numero ottale è identificato tramite la radice, 8):

    parseInt("777", 8)

    // Restituisce 511 (la rappresentazione decimale del numero ottale 777)

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    34
    Aaaaaaahhhhh, diciamo che ho capito lo 0,25%... però ho compreso che Math è approsimativo e soprattutto mi restituisce valori; cosa che non fa parseInt.

  8. #8
    Utente di HTML.it L'avatar di gobbo89
    Registrato dal
    Jun 2006
    Messaggi
    816
    Diciamo che Math.round [round è un metodo della classe Math] arrotonda i numeri per eccesso o per difetto:
    - 1.5->2
    - 1.4->1

    parseInt invece:
    - converte una stringa, per esempio "3.9", in un numero intero e arrotonda sempre per difetto: "3.9"->3
    - interpreta le stringhe che iniziano per "0x" come esadecimali e le converte come tali
    - ecc. ecc. ecc.

    In ogni caso per i preload "tradizionali" è opportuno utilizzare Math.round [o Math.floor, che è un altro metodo].
    Se trovi online dei preload che utilizzano parseInt vuol dire che sono stati sviluppati con versioni di flash e di AS precedenti, e generalmente basta sostituire per farli funzionare correttamente.


  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    34
    Ecco! Infatti proprio questo volevo chiederti: se è meglio il metodo Math.round perché nel preload che avevo scaricato ho trovato parseInt? Ma vedo che mi hai già risposto!

  10. #10
    Utente di HTML.it L'avatar di gobbo89
    Registrato dal
    Jun 2006
    Messaggi
    816

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.