当前位置: 首页 > Web前端 > JavaScript

运行环境

时间:2023-03-27 13:18:20 JavaScript

网页中的运行环境是浏览器1.JS上线后运行在什么地方?下载网页代码并渲染页面,这期间会执行几个js代码。稳定高效的网页加载流程性能优化安全性2.网页是如何渲染的?从输入url到渲染页面的全过程DNS解析:域名->IP地址,浏览器根据IP地址向服务器发起http请求,服务器处理http请求           并返回到浏览器  加载资源的表单,加载资源的过程,页面渲染的过程? 基于html生成DOMTree 基于css代码生成CSSOM 将DOMTree和CSSOM整合形成RenderTree 基于RenderTree渲染页面 遇到脚本,暂停渲染,优先排序加载并执行js代码,完成后继续  为什么要把链接css放在头部呢?  为什么要把scriptjs放在最后呢?  window.onload和DOMContentLoaded的区别: window.onload:会在页面所有资源加载完成后执行,包括图片、视频等。   DOMContentLoaded:可以在DOM渲染完成。3.前端性能优化  使用更多的内存、缓存或其他方法  减少CPU计算,减少网络加载时间(空间换时间)  使加载更快  减少资源大小:压缩代码  减少访问次数:合并代码、SSR渲染、缓存  让渲染速度更快  尽快执行js  图片延迟加载  DOM用于缓存,组合并插入DOM结构  油门和防抖去抖  4.防抖去抖监听输入框。文字变化后,触发change事件,直接使用keyup事件。change事件会频繁触发。防抖是指用户输入结束或暂停时触发change事件5.Throttlethrottle拖动元素时,应该获取元素的拖动位置随时直接使用拖动事件,会频繁触发,容易卡顿和节流:无论拖动速度多快,都会每隔100ms触发一次可以拖动

6.如何防止xss攻击xss跨站请求攻击场景:一个博客站点,我发布了一篇博客,其中embeddedScriptscript脚本内容:获取cookie并发送到我的服务器(服务器配合跨域)发布这个博客,如果有人浏览他,我会很容易地收割访问者的cookie来替换特殊字符,比如使用>,或者在npmjs中使用xss来预防。7、XSRF攻击(跨站请求伪造)场景:你在购物,看中了某款商品。商品id为100,支付接口为xxx.com/pay?id=100,但没有验证。我是攻击者。我看中了id为200的产品,我给你发了一封电子邮件,但电子邮件的文本是隐藏的你一查邮件就帮我买了id为200的product防商品:使用post接口增加验证,比如支付密码,短信验证码,指纹