Я хочу создать журнал каждой функции, вызываемой при запуске js-скрипта. Так я хочу, чтобы сделать обратный вызов для всех функций JavaScript, как это:v8: не удается получить имя вызывающей функции в functioncallback
global->Set(v8::String::NewFromUtf8(isolate, "print"), v8::FunctionTemplate::New(isolate, LogName));
global->Set(v8::String::NewFromUtf8(isolate, "eval"), v8::FunctionTemplate::New(isolate, LogName));
global->Set(v8::String::NewFromUtf8(isolate, "unescape"), v8::FunctionTemplate::New(isolate, LogName));
я определяю свою функцию, как это:
void LogName(const v8::FunctionCallbackInfo<v8::Value>& args) {
v8::String::Utf8Value str_caller(args.Callee());
printf("%s", str_caller);
}
Это выдаваемое когда экранирования в называется: функция экранирования в() {[машинный код]}
Но если сделать:
object = v8::Handle<v8::Object>::Cast(context->Global()->Get(v8::String::NewFromUtf8(isolate, "String")));
object->Set(v8::String::NewFromUtf8(isolate, "fromCharCode"), v8::FunctionTemplate::New(isolate, LogName)->GetFunction());
Это р rinted, когда вызывается String.fromCharCode: function() {[собственный код]}
Почему во втором примере у меня нет имени функции, например, например «fromCharCode»?