JS中的执行上下文

JavaScript09

JS中的执行上下文,第1张

执行上下文有 三种 类型:

执行上下文也是一个对象!那么这个对象中包括了哪些内容呢

每一个 执行上下文都包括三个属性:

存储执行上下文的数据结构是堆栈,它是一种先进后出的数据结构, 称其为 执行栈

1.当js引擎首次读取读取脚本时,便会创建一个全局执行上下文,并将其压入栈底,

我们假设一开始的上下文执行栈为 []

-(void)webView:(WKWebView *)webView didFinishNavigation:(WKNavigation *)navigation

{

// 设置javaScriptContext上下文

self.jsContext = [webView valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"]

self.jsContext[@"ios"] = self self.jsContext.exceptionHandler = ^(JSContext *context, JSValue *exceptionValue) {

context.exception = exceptionValue NSLog(@"异常信息:%@", exceptionValue)

}

}