js高级程序设计
- js是一门语言,可以用来编写程序,编写的程序运行在浏览器中。用户通过手机和电脑访问网页,和浏览器网页发生交互,就可以传递信息到浏览器,浏览器会根据信息进行相应的处理。 这样人与人之间就可以通过网页进行信息的交互了。
- 当你做到js精通。就可以不慌不忙:遇到需求有方案,碰到问题有答案。
- js的载体是浏览器,那么语言就要具备跟浏览器交互的能力,成为用户与应用交互的桥梁,这个能力由DOM和BOM提供。
- DOM是文档对象模型,Document Object Model,文档对象模型,它分管文档。什么是文档,你打开的每个网页,都是一个HTML文档,就好比用WPS打开Word文档一样。 应用:获取页面中某个元素,改变其内容,或者绑定事件以响应用户操作等。
- BOM是浏览器对象模型,Browser Object Model,用于支持访问浏览器窗口。 应用:弹出新窗口,获取浏览器类型,获取访问URL等。
- 浏览器窗口对象window,window对象是浏览器窗口的根对象,所有对象都继承自window对象。
- 定义和作用域: 变量定义: var,let,const。 作用域:全局作用域,函数作用域,块级作用域。
- JavaScript有七种简单数据类型和一种复杂数据类型。 简单类型:String、Number、Boolean、Undefined、Null、BigInt、Symbol 复杂类型:Object
- 原始值与引用值:当原始值发生了类似 a = b 的传递,后续对于a的改变不会影响b,但引用类型中,后续对a的改动会同步到b,这也就引出了一个老生常谈的话题“深/浅拷贝”。
- 数组,Map,Set
- 操作符: for,while,do while,if else,switch case,三目运算符,&&,||,??.
- 异步操作: setTimeout,setInterval,requestAnimationFrame,Promise
- 编程范式: 面向对象、面向过程、函数式.
- Fetch,Web Socket,EventSource API,File上传,Blob URL,Canvas,客户端存储cookie,localStorage和sessionStorage,IndexedDB,execCommand,Clipboard API,Device API,Page Visiblily API,URL API,WebAssembly