Visualizzazione dei risultati da 1 a 5 su 5

Hybrid View

  1. #1
    Cioè se faccio questo:

    codice:
    function distancematrix(func) {
    
    
        let myPromise = new Promise(function(resolve, reject) {
            resolve(searchGPS);
        });
    
    
        myPromise.then(
            result => alert(result)
        );
    }

    mi da come risultato il code javascript della funzione searchGPS e non il risultato delle cordinate

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,482
    Quote Originariamente inviata da techno Visualizza il messaggio
    Cioè se faccio questo [...]
    mi da come risultato il code javascript della funzione searchGPS e non il risultato delle cordinate
    La funzione resolve() va chiamata passando come primo parametro il valore da restituire, ossia i dati ottenuti dal completamento del processo che richiede tempo e che è rappresentato appunto dalla Promise.

    Tu stai passando come primo parametro la funzione searchGPS, quindi è normale che quella funzione costituisca il valore di ritorno della Promise.

    Se volevi passare il valore restituito dalla funzione searchGPS, allora la devi invocare, quindi vanno messe due parentesi:
    codice:
    resolve(searchGPS());
    Se però la funzione searchGPS() è uguale a quella che hai proposto all'inizio, non funzionerà nulla, in quanto restituiva già essa un valore errato per via della problematica che ti ho descritto in modo approfondito.

    In breve, searchGPS non è corretta e restituisce undefined, quindi se la invochi e restituisci il suo valore di ritorno con una Promise, otterrai ovviamente undefined.

    Credo che qui manchino tantissime basi di programmazione JavaScript che devono essere approfondite prima di costruire architetture un minimo più complesse: non si può correre senza prima camminare.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

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 © 2026 vBulletin Solutions, Inc. All rights reserved.