sxx的技术专栏 Nodejs and Javascript Coder

后台相关及对json数据的理解

2018-07-12
blockxia

阅读:


1. json数据的讲解

什么: json是一种用来存储结构化数据的文本数据结构
优点: 小巧, 可以轻松的与js相互转换
整体类型: 
	json对象: {}, 与js对象对应
	json数组: []  与js数组对应
组成: 
	结构: 类型与名称
	值
模拟json数据:
	与真实json数据在结构上要相同, 值可以不同

2. mock数据的讲解

对于前后台分离的项目来说, 前后台可以独立开发, 当后台还没有写好时, 前台应用就可以编写了
前台应用需要自己mock数据接口动态为前台提供数据, 当真实接口完成后, 切换到真实接口即可
要求: mock的json数据与真实接口的数据在结构上要相同
工具包: mockjs

3. 原型/原型链

作用: 原型链用于查找对象的属性
什么: 实例对象上都会有一个隐式原型属性(__proto__), 它指向的就是原型对象, 而原型对象也有__proto__属性指向它的原型对象
为什么__proto__指向的是原型对象?
	构造函数对象上有显式原型属性(prototype), 它指向的就是原型对象
	实例对象的__proto__属性被赋值为构造函数的prototype属性值

4. 作用域链

作用: 作用链用来查找变量
什么: 多个由内向外作用域形成的链
作用域: 一块代码区域, 分类全局作用域和函数/局部作用域, ES6有了块作用域

5. 闭包

如何产生闭包?
	2个函数嵌套
	内部函数引用了外部函数内的局部变量
	执行外部函数
是什么?
	包含了那个局部变量的容器
	它被内部函数对象引用着
作用?
	延长局部变量的生命周期
	使函数外部可以多次间接操作到函数内部的数据
应用?
	循环遍历加监听
	IIFE定义模块
	jQuery内部

###代码演示:

```js

	function fn1 () {
		var a = 2
		function fn2 () {
			a++
			console.log(a)
		}
		return fn2
	}
	const f = fn1()
	f()
	f()
	
```

Comments

Content