Según el enlace que proporcionó en los comentarios, el carácter %
parece usarse en algunos de los códigos fuente V8 JavaScript engine para indicar un método del tiempo de ejecución de C++ que se ejecutará al analizar el código fuente de JavaScript.
Por ejemplo, la línea en string.js:
return %StringBuilderConcat(parts, len + 1, "");
cuando se encuentran por el analizador, se ejecuta el método StringBuilderConcat
. Puede encontrar una lista de los métodos de tiempo de ejecución disponibles para los archivos JavaScript de V8 en runtime.h (tenga en cuenta que no tengo experiencia con C++, por lo que sé que esto no tiene nada que ver con el StringBuilderConcat
método mencionado en string.js, pero Creo que es lo mismo):
#define RUNTIME_FUNCTION_LIST_ALWAYS_1(F) \
/* Property access */ \
F(GetProperty, 2, 1) \
F(KeyedGetProperty, 2, 1) \
/* ... */
F(StringBuilderConcat, 3, 1) \
/* ... */
Como ya se ha dicho, return %foo
podría lanzar una SyntaxError en JavaScript.
Bueno, podrías intentar buscar 'percentage sign javascript'. Eso te llevaría a saber que es un operador de módulo. – bezmax
'return% foo'? ¿Tienes un ejemplo más completo? No veo lo que podría ser eso. –
@dystroy http://stackoverflow.com/a/7299040/1365010 por ejemplo – user1365010