Ho appena riorganizzato un file JavaScript molto grande. Ora ricevo "Fine imprevista dell'input". Da qualche parte in quelle centinaia di funzioni, uno ha perso (o guadagnato) una parentesi. Qual è il modo più veloce per trovarlo?Parentesi non corrispondenti: un modo rapido per trovarle?
risposta
Si potrebbe provare a analizzare il file con lint: http://www.javascriptlint.com/online_lint.php
Se avete problemi con la dimensione del file di cercare di dividerlo in quelli più piccoli ...
Ri-formattare il file usando qualcosa che rientra bene. Cerca qualcosa che è troppo lontano a sinistra.
Normalmente lo farei, ma uso il "code browser" di Marc Kerbiquet. È incredibilmente utile per l'organizzazione del codice. Ma l'unico svantaggio è che l'aggiunta di più rientri lo renderebbe molto meno utile. Ma lo farò sicuramente in file più piccoli. –
È ancora solo un file; mettilo in un editor che indentazione. (Voglio dire, sì, jslint va bene anche, basta dire.) –
Minimizzare la nidificazione di funzioni. Riduce la qualità del codice (mantenibilità-saggio).
Sono piuttosto un newb - non sapevo che potessi annidare le funzioni in JavaScript (nella mia ultima lingua che non era possibile). Mi hai dato idee malvagie, grazie! –
Funzioni opportunamente annidate _improve_ la qualità del codice, non lo riducono. – nnnnnn
La parola chiave è "Appropriatamente" troppo spesso è pigro, veloce e sporco, programmazione. –
Un buon trucco quando manca una parentesi in eclissi è di andare alla controvisione finale nel modulo sorgente e fare doppio clic su di essa. Ciò evidenzierà tutto il ritorno a ciò che PENSA è il tutore aperto corrispondente. Il punto in cui si evidenzia è invariabilmente l'INIZIO di dove si trova il problema, quindi salta quella parentesi aperta e vai a quella successiva e inizia a fare doppio clic sulle parentesi graffe aperte e di solito troverai dove manca la parentesi abbastanza rapidamente. Ho imparato che il modo più difficile con un file di codice sorgente di oltre 20.000 righe di codice e ottenere centinaia di errori senza la minima indicazione di dove il vero problema era quando gli errori iniziarono a comparire migliaia di righe prima nel codice.
- 1. Parentesi graffe corrispondenti in Emacs
- 2. Parentesi corrispondenti in Scala --- approccio funzionale
- 3. Elimina parentesi graffe corrispondenti in Visual Studio
- 4. modo rapido ed efficiente per eseguire il looping su milioni di righe e colonne corrispondenti
- 5. Linea verticale tra parentesi graffe corrispondenti per java in eclissi
- 6. Funzione Haskell per verificare le parentesi corrispondenti a
- 7. C'è in vscode un'opzione per: Selezionare tutto tra parentesi corrispondenti
- 8. C'è un modo rapido per creare un set?
- 9. Modo rapido per eliminare il bucket Google non vuoto?
- 10. modo più rapido per generare bit casuali
- 11. Sostituzione corrispondenti {} parentesi graffe con do/fine a Vim (Ruby)
- 12. Modo rapido per decodificare l'immagine JPEG
- 13. Modo rapido per effettuare più chiamate AJAX
- 14. Modo rapido per correggere gli avvisi XCode
- 15. Esiste un "modo più rapido" per costruire stringhe in Java?
- 16. Un modo rapido per determinare se esiste una PID (Windows)?
- 17. C'è un collegamento in Pycharm o Sublime Text 2 per Salta fuori dalle parentesi corrispondenti?
- 18. Python: un modo rapido per sommare i prodotti esterni?
- 19. Modo rapido per trovare il prossimo multiplo di un numero
- 20. Un modo rapido per eliminare una riga in netBeans
- 21. Un modo rapido per selezionare una linea in netBeans
- 22. modo rapido per inizializzare un tensore in torch7
- 23. C#, modo rapido per invertire un bool nullable?
- 24. Haskell: errore di analisi (eventuale rientro non corretto o parentesi non corrispondenti) con comprensione dell'elenco
- 25. Come impostare le parentesi graffe "/ parentesi"/parentesi quadre/operatori aritmetici per evidenziare il colore in VIM?
- 26. AvalonEdit evidenzia i caratteri corrispondenti
- 27. Ore/minuti/secondi corrispondenti nelle espressioni regolari - un modo migliore?
- 28. Modo rapido per l'utente SVN per imparare ClearCase
- 29. modo rapido per fare 26 macro (uno per ogni lettera)
- 30. Come modificare il colore di evidenziazione per le parentesi corrispondenti in VS2010
"La fine imprevista dell'input" è quasi certamente una parentesi mancante, non una in più. – cdeszaq
Hai un editor che comprime le parentesi o mostra visivamente il loro ambito nel margine sinistro oppure ha un comando "vai all'altra estremità" o ha una finestra "contorno" separata? –
Grazie. Cercherò un editor che comprima le parentesi graffe. Stavo cercando un evidenziatore e non avevo pensato di crollare. Grazie. –