开发模式
get与post的最重要的区别!
- get提交的数据量小,post可以提交大量数据,比如文件。
- get的数据暴露在url中,post打包发送数据,比get安全。
forEach,for…of,for…in 的区别
forEach:遍历数组,但不能使用break、continue和return语句,
forEach用法:
arr.forEach(function(value,index){
})
for…of:遍历数组和类数组
for…of用法:
for(var i of arr){
}
for…in:循环数组索引、对象的属性,使用for…in遍历时,原型链上的所有属性都将被访问
for…in 用法:
for(var i in arr){
}
什么是TM的JSON?json如何使用?
Json 是一种轻量级的数据交换格式。它基于 javascript的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。
json的常用类型:在js语言中,一切都是对象,因此任何支持的类型都可以通过json来表示。json支持的数据类型有:
两种特殊类型:数组(array)、对象(object)
四种基础类型:字符串(string)、数字(number)、布尔型(boolean)、NULL值
其中对象和数组是比较特殊且常用的两种类型。
这两种特殊类型的区别:
数组:数组在 JS 中是方括号 [] 包裹起来的内容。在 JS 中,数组是一种比较特殊的数据类型,它也可以像对象那样使用键值对,但还是索引使用得多。同样,值的类型可以是任意类型。
{“firstName”: “Brett”, “lastName”: “McLaughlin”}。
对象:对象在 JS 中是使用花括号包裹 {} 起来的内容。在面向对象的语言中,key为对象的属性,value为对应的值。键名可以使用整数和字符串来表示。值的类型可以是任意类型。
people:[{“firstName”: “Brett”,“lastName”:“McLaughlin”},{“firstName”:“Jason”,“lastName”:“Hunter”}]
var obj = {a: ‘Hello’, b: ‘World’}; //这是一个对象,注意键名也是可以使用引号包裹的
var json = ‘{“a”: “Hello”, “b”: “World”}’; //这是一个 JSON 字符串,本质是一个字符串

req和res
req : request的缩写, 请求的数据
Request 对象表示 HTTP 请求,包含了请求查询字符串,参数,内容,HTTP 头部等属性。
我们常用req.body.xx来表示POST的xx属性
res: response的缩写, 响应的数据
Response 对象表示 HTTP 响应,即在接收到请求时向客户端发送的 HTTP 响应数据。
我们常常用res.send() 传送HTTP响应 , res.render()渲染结果页面