2016-06-30 10 views

Odpowiedz

8

Nie ma żadnego szczególnego powodu, poza tym, że kwestia ma względnie niski priorytet.

ta zostanie zoptymalizowany w pewnym momencie

to sprawdzić chromium v8 issue 1065

Jeśli kierujesz V8 można przenieść try-catch do osobnej funkcji, ale należy to zrobić tylko wtedy, gdy jest to kwestia rzeczywistym wydajność w przeciwnym razie jest to tylko przedwczesna optymalizacja.

„Programiści marnować ogromne ilości czasu myśleć o lub martwić, prędkości niekrytycznych części swoich programów, a te próby sprawności faktycznie mają silny negatywny wpływ podczas debugowania i konserwacja są uznawane. trzeba zapomnieć o małe wydajności, powiedzmy około 97% czasu: przedwczesny optymalizacji jest korzeniem wszelkiego zła Jednak nie powinniśmy przechodzić nasze możliwości w tej krytycznej 3%”- Donald Knuth

. T on tylko funkcja, która najprawdopodobniej nigdy nie zostanie zoptymalizowane są

  • funkcje z „debuggera” oświadczenie
  • funkcje, które wymagają eval()
  • Funkcje, które zawierają „z” oświadczeniem

Inne problemy z optymalizacją powinny zostać w pewnym momencie naprawione.

+3

Jako późniejsze uzupełnienie tej odpowiedzi, należy zauważyć, że nowy kompilator TurboFan w wersji V8 teraz optymalizuje zarówno try-catch-finally, jak i inne funkcje: https://news.ycombinator.com/item? id = 12178856 – csvan

Powiązane problemy