Что такое процент ( % ) в JavaScript?
Я видел %
во многих кодах. Можете ли вы объяснить мне его назначение или что он делает?
P. S: %
игнорируется из поисков Google, поэтому я не смог найти его в Google.
Edit: я знаю операнд в математике 13 % 10 = 3
, но то, что я видел, похоже на return %foo
.
1 ответ:
Основываясь на ссылке, которую вы предоставили в комментариях, символ
%
, по-видимому, используется в некоторых исходных кодахV8 JavaScript engine , чтобы указать метод среды выполнения C++, который будет выполняться при разборе исходного кода JavaScript.Например, строка в строке .js :
return %StringBuilderConcat(parts, len + 1, "");
При обнаружении синтаксическим анализатором, метод
StringBuilderConcat
будет выполнен. Вы можете найти список методов выполнения, доступных для файлов JavaScript V8 в runtime.h (заметьте, у меня нет опыта работы с C++, поэтому, насколько я знаю, это не имеет ничего общего с методомStringBuilderConcat
, на который ссылается строка .js , но я думаю, что это одно и то же):#define RUNTIME_FUNCTION_LIST_ALWAYS_1(F) \ /* Property access */ \ F(GetProperty, 2, 1) \ F(KeyedGetProperty, 2, 1) \ /* ... */ F(StringBuilderConcat, 3, 1) \ /* ... */
Как уже было сказано,
return %foo
вызовет синтаксическую ошибку в JavaScript.