

面试题如下
1.优先级算法如何计算?
2.列出 display 的值,说明他们的作用
3.position 的值,relative 和 absolute 分别是相对于谁进
行定位的
4.css 与 js 动画差异
5.选择器优先级
上期答案请查收
1) 尽量减少对 dom 元素的访问和操作
2) 尽量避免给 dom 元素绑定多个相同类型的事件处理函数,可以将多个相同类型事件处理函数合并到一个处理函数,通过数据状态来处理分支
3) 尽量避免使用 toggle 事件
1) 创建 XMLHttpRequest 对象(异步调用对象)var xhr = new XMLHttpRequest();
2) 创建新的 Http 请求(方法、URL、是否异步)xhr.open(‘get’,’example.php’,false);
3) 设置响应 HTTP 请求状态变化的函数。onreadystatechange事件中readyState属性等于4。响应的HTTP状态为200(OK)或者 304(Not Modified)。
4) 发送 http 请求xhr.send(data);
5) 获取异步调用返回的数据
注意:
1) 页面初次加载时,尽量在 web 服务器一次性输出所有相关的数据,只在页面加载完成之后,用户进行操作时采用 ajax 进行交互。
2) 同步 ajax 在 IE 上会产生页面假死的问题。所以建议采用异步 ajax。
3) 尽量减少 ajax 请求次数
4) ajax 安全问题,对于敏感数据在服务器端处理,避免在客户端处理过滤。对于关键业务逻辑代码也必须放在服务器端处理。
基本数据类型存储在栈中,引用数据类型(对象)存储在堆中,指针放在栈中。两种类型的区别是:存储位置不同;原始数据类型直接存储在栈中的简单数据段,占据空间小、大小固定,属于被频繁使用数据,所以放入栈中存储;引用数据类型存储在堆中的对象,占据空间大、大小不固定,如果存储在栈中,将会影响程序运行的性能引用数据类型在栈中存储了指针,该指针指向堆中该实体的起始地址。当解释器寻找引用值时,会首先检索其在栈中的地址,取得地址后从堆中获得实体。
JS 的延迟加载有助与提高页面的加载速度。
defer 和 async、动态创建 DOM 方式(用得最多)、按需异步载入 JS
defer:延迟脚本。立即下载,但延迟执行(延迟到整个页面都解析完毕后再运行),按照脚本出现的先后顺序执行。
async:异步脚本。下载完立即执行,但不保证按照脚本出现的先后顺序执行。
同步的概念在操作系统中:不同进程协同完成某项工作而先后次序调整(通过阻塞、唤醒等方式),同步强调的是顺序性,谁先谁后。异步不存在顺序性。
同步:浏览器访问服务器,用户看到页面刷新,重新发请求,等请求完,页面刷新,新内容出现,用户看到新内容之后进行下一步操作。
异步:浏览器访问服务器请求,用户正常操作,浏览器在后端进行请求。等请求完,页面不刷新,新内容也会出现,用户看到新内容。

我在这里等你哦
章老师:13838082434
扫描下方二维码,立即报名
👇


