1. 函数
// 带名称的函数 // function func1 (args) { // return args + 1 // } // // const func2 = function (args) { // return args + 1 // } // 直接执行的匿名函数 // (function () { // alert('这是个直接调用的匿名函数') // })() // 高阶函数, 将一个函数作为参数传入,在函数内部执行函数 function second(c, d){ return c + d; } function first(a,b, func){ alert(func(a, b)) }
2. 闭包
- 定义:
- 函数的返回值可以为函数
- 所有的参数和变量都保存在返回函数中
- 当调用返回函数时才执行所有的运算逻辑
- 用途:
- 匿名自执行函数
- 封装
- 结果缓存
3.特殊对象
- JSON对象
- JSON, 对象的序列化和反序列化
- JSON.stringify 序列化
- JSON.parse 反序列化
- Date对象
- JS的时间操作对象
- new Date(dateString)
4.事件循环
- 主程序不断的重复获取执行信息,再获取不断循环的机制被称为事件循环
- 为什么需要事件循环
- js是单线程的
- 在处理异步操作的时候需要事件循环机制
- 相关概念
- 堆 :大块非结构化存储区域,储存对象,数据
- 栈:调用栈,储存该次循环主程序所执行的任务
- 队列:事件队列,先进先出推入到调用栈中
- 宏任务和微任务
- Node.js 事件循环
5. 原型链
- 概念
- prototype
- _proto_
- constructor
- 应用场景:
- 继承, 代码复用
6. 异步操作 promise
7. 浏览器存储
- cookies
- 主要用于与服务器通信
- 储存量小
- LocalStorage
- 储存量相对于cookies较大
- 只能存储字符串
- SessionStorage
- 只存当前Session,关闭浏览器就丢失了
- IndexDB
- 相当于浏览器上的SQL数据库
8.