- 对象里面可以存函数 对象相当于Python字典
- 闭包可以控制变量作用域 通过在函数中 返回对变量进行操作的对象的函数(400 6-5)
- let关键字会生成一个块级作用域
- settimeout异步定时器执行一次 setinterval异步循环执行 它们都是浏览器的web API
- ajax、图片加载以及定时器都是异步 防止程序阻塞
- this在执行到的地方确认其对象
- js是单线程
- js中异步使用回调函数,通过事件循环实现
- 异步一般指单线程,多线程的叫并行
- js中dom事件(click事件) 使用回调函数 通过事件循环实现
- dom本质是通过html和css形成的树结构,可以对浏览器内存中的html和css进行获取和设置
- attribute是对节点属性操作 它会改变html结构 耗费更多性能 property不会
- js中dom就相当于c++对xml的操作
- jquery相当于对dom进行封装
- jquery可以通过trigger函数去手动通过代码触发事件
- 跨域就是跨域名 图片/css/js文件都可以跨域
- 跨域的实现方式 jsonp
- document.cookies通过分号分割 赋值后直接添加
- cookie本身用作客户端和服务器通讯的 会随http请求发出 结果被用作客户端存储
- localstorage被专门用作客户端缓存 不随HTTP请求发出
- 302临时重定向 4xx客户端错误 5xx服务端错误
- get获取数据(查 ) post修改数据(增删改) 是一种约定规范
- http缓存:将服务器数据缓存起来 下次不需再获取(js.css.img)
- 强制缓存 同名称文件客户端根据响应头决定是否读取缓存 response-header添加cache-control:max-age=秒。超过时间就不缓存
- 协商缓存 缓存过期后 服务端根据资源标识决定是否返回数据
- 调试js 开发者工具sources页签 通过js文件写入debuger 或者下断点调试
- 请求一个js比多个js要快
- 只要文件名不变 就能命中http缓存
- 性能优化就是 增加缓存 减少CPU计算 减少网络请求
- 防抖=> 类似百度搜索 输入完成后才进行搜索 通过监听keyup通过定时器异步
- 节流=>div可以通过监听drag拖拽