Perché un comando nella console JavaScript (JS) di Safari non chiama una funzione definita in precedenza?

1

Ho gli ultimi MacOS e Safari su un Macbook Pro 2012.

link mi fornisce una funzione e un ciclo per chiamare più volte.

Se incollo la definizione della funzione nella console JS, quindi il comando loop, non succede nulla.

Se cambio la chiamata alla funzione "console.log" e la inserisco, stampa i parametri corretti.

Se ridefinisco la funzione per chiamare console.log e digitare di nuovo la chiamata, ciò funziona. Se poi incollo il ciclo originale, non succede nulla.

Conclusione: la console Safari JS non consente a JS iniettato di chiamare una funzione definita dall'utente.

È un bug o c'è un'impostazione di sicurezza che devo cambiare?

    
posta WGroleau 27.05.2018 - 21:37
fonte

1 risposta

1

Non riesco a riprodurre il problema che stai riscontrando. Ho provato con il seguente JavaScript eseguito nella console.

Ho diviso gli screenshot di ogni passaggio dalla domanda, ma i comandi effettivi sono stati eseguiti nella console su una pagina senza ricaricare.

If I paste the function definition into the JS console, then the loop command, nothing happens.

If I change the function call to "console.log" and put that in, it prints the correct parameters.

If I redefine the function to call console.log and type in the call again, that works. If I then paste the original loop, nothing happens.

Tutto sembra funzionare correttamente come dovrebbe! Forse la domanda potrebbe fare con alcuni screenshot di quello che stai provando.

    
risposta data 27.05.2018 - 22:34
fonte

Leggi altre domande sui tag