Во время игры с консолью разработчика в Firefox я попытался сделать это:
var a = b => c => c;
а затем это:
a(1)
Я ожидал, что результат будет function()
(соответствует c => c
), но вместо этого он был отображен:
function a/<()
В чем смысл этого выражения? Это явно не законный Javascript, поскольку ни /
, ни <
не являются допустимыми символами для имени функции.
То же самое происходит с использованием регулярных обозначений для функций, т.е. var a = function(b) { return function(c) { return c; } }
.
Вот скриншот:
Изменить: я попробовал следующее
var a = b => c => d => d;
a(1)
и результат
a/</<()
что заставляет меня думать о какой-то менее известной сокращенной нотации.