We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
请先关注 Js 运行时
总结一下大概有 inline function,编译时的常量折叠,属性访问优化等方式
主要是和 ecma script 以及运行机制相关的内容:语法,语句,运算符,上下文等
主要是明确各种优先级的顺序,看一个高频面试题
// member expression > new 无参数 列表 > () 这里是函数调用 new new Foo.getName()
关键是类型计算策略和 toPrimitive 方法,同样是高频面试题
// 首先是 ! 优先级高于 ==,右侧为 false // 然后两端转数字 Number([]) == Number(false) [] == ![] \\true
const name = 123; const foo = () => {console.log(this.name)}; // 结果 123,箭头函数没有自身的 this,只会去上层作用域查找 foo.call({name: 456})
看一个问题,执行结果是 1324
document.body.addEventListener('click', function() { Promise.resolve(0).then(() => console.log(2)); console.log(1); }); document.body.addEventListener('click', function() { Promise.resolve(0).then(() => console.log(4)); console.log(3); }); // 考察宏任务和微任务的执行顺序 document.body.click();
如何理解同源策略:协议相同、域名相同、端口相同。起初知识针对 cookie,随着浏览器安全的发展,目前有三种行为受到限制
更进一步的 csp,可以控制更多,包括网络资源,脚本执行,音视频播放等
渲染进程通过主进程与网络、ui、gpu 进程通信
简单的说就是把 iframe 也用一个独立的渲染进程去处理,代替以前 tab 级别渲染进程的架构
同一站点策略,从 a 中打开 b,a b 主域名相同,不使用 rel= noopener
// 浏览上下文组 (window 对象,历史记录,滚动条位置) window.opener | const win = window.open()
The text was updated successfully, but these errors were encountered:
No branches or pull requests
请先关注 Js 运行时
深度优化
总结一下大概有 inline function,编译时的常量折叠,属性访问优化等方式
语言基础
主要是和 ecma script 以及运行机制相关的内容:语法,语句,运算符,上下文等
运算优先级
主要是明确各种优先级的顺序,看一个高频面试题
隐式转换
关键是类型计算策略和 toPrimitive 方法,同样是高频面试题
箭头函数
Eventloop
看一个问题,执行结果是 1324
同源策略
如何理解同源策略:协议相同、域名相同、端口相同。起初知识针对 cookie,随着浏览器安全的发展,目前有三种行为受到限制
更进一步的 csp,可以控制更多,包括网络资源,脚本执行,音视频播放等
攻击防范
安全沙箱
渲染进程通过主进程与网络、ui、gpu 进程通信
浏览器内核控制
站点隔离
简单的说就是把 iframe 也用一个独立的渲染进程去处理,代替以前 tab 级别渲染进程的架构
渲染进程共用
同一站点策略,从 a 中打开 b,a b 主域名相同,不使用 rel= noopener
The text was updated successfully, but these errors were encountered: