Size: a a a

2021 February 10

К

Константин in javascript_ru
не настолько, чтобы вообще проверки убрать
источник

DM

Denys Mikhalenko in javascript_ru
Смотрел один доклад от разработчика v8
источник

К

Константин in javascript_ru
так как у тебя тут inderect invocation.
Он положит на стек результат вызова, потом упадет в финал, еще положит и только потом вернет самый первый.
источник

P

PWG in javascript_ru
Denys Mikhalenko
function foo() {
 console.log('foo')
 return 42
}
function bar() {
 console.log('foo() was called')
 return foo()
}
console.log(bar())
дает нам
foo() was called
foo
42
как получить
foo
foo() was called
42
???
Может через декоратор как-то?
источник

DM

Denys Mikhalenko in javascript_ru
Напиши через декоратор и попробуй )
источник

К

Константин in javascript_ru
источник

К

Константин in javascript_ru
Он же может переопределить результат вызова
источник

DM

Denys Mikhalenko in javascript_ru
Ага
источник

DM

Denys Mikhalenko in javascript_ru
Да, можно поменять
источник

DM

Denys Mikhalenko in javascript_ru
Потому что значение возврата хранится же там в отдельной переменной в v8
источник

DM

Denys Mikhalenko in javascript_ru
Чо ж не мочь-то )
источник

К

Константин in javascript_ru
Ну тут спорно =) так как нужно смотреть уровни оптимизаторов
источник

К

Константин in javascript_ru
Зато JAVAисты будут рады =)))
источник

DM

Denys Mikhalenko in javascript_ru
Ну в коде так
источник

DM

Denys Mikhalenko in javascript_ru
А то, что там наоптимизируется после сборки я уж не смотрел )
источник

u

uda in javascript_ru
а еще, когда стоит использовать try/catch ?
источник

u

uda in javascript_ru
одни говорят, что всегда, другие только если нужно кастомно обработать ошибку
источник

DM

Denys Mikhalenko in javascript_ru
Всегда? )
источник

DM

Denys Mikhalenko in javascript_ru
В каком смысле всегда?
источник

u

uda in javascript_ru
в плане если используешь асинхронность -- напиши
источник