1.打开链接的方式
- 在当前页面打开,可以后退 open("url","_self");
- 在当前页面打开,不能后退 location.replace("新url");
- 在新窗口打开,可以打开多个 open("url","_blank");
- 在新窗口打开,只能打开一个 比如,只能打开一个结账页面 open("url","自定义name"); 自定义name:随便写的一个东西,每个窗口的底层都会有一个名字,打开时如果没有此名字的窗口则为打开,有名字的窗口则为替换
2.定时器
- 周期性定时器
开启:timer=setInterval(回调函数,间隔毫秒数) 停止:clearInterval(timer); - 一次性定时器
开启:timer=setTimeout(回调函数,间隔毫秒数) 停止:clearInterval(timer);
3.history
前进:history.go(1); 后退:history.go(-1); 刷新:history.go(0);
4.location
协议:location.protocol;
域名:location.hostname;
端口号:location.port;
路由/文件路径:location.pathname;
请求消息/查询字符串:location.search
5.event
兼容:var e=event;
利用冒泡/事件委托:
e.target代替了this
兼容e.srcElement;
事件 1、鼠标右键:oncontextmenu 2、键盘按下:onkeydown
6. webStorage:
- sessionStorage - 会话级-一旦关闭就没了
- localStorage - 本地级 永久存在
1、添加:xxxxStorage.属性名=值;
2、获取:xxxxStorage.属性名;
3、删除:xxxxStorage.removeItem("属性名"); - 只会删除一个
4、清空:xxxxStorage.clear(); - 删除全部
7.node.js
- fs模块(异步)
引入:const fs = require('fs'); - 读取fs.readFile("文件的路径",(err,buf)=>{ buf-读取到的内容 })
- 写入fs.writeFile("文件的路径","新内容",()=>{ //写入完毕后要干什么操作就放在这里 })
- 追加fs.appendFile("文件的路径","新内容",()=>{ //写入完毕后要干什么操作就放在这里 })
8.http模块
-
引入
var http=require("http");
var url=require("url");
var fs=require("fs"); -
创建服务器 var app=http.createServer();
-
app.listen(80);
-
app.on("request",(req,res)=>{ //req:request,请求,前端发的才叫请求,而,这个req对象,会有一个属性叫做req.url,就可以得到前端传来的路由&请求消息,我们希望把路由和请求消息区分开,所以需要搭配另一个url模块
var objUrl=url.parse(req.url,true);
var router=objUrl.pathname;
if(router=="/" || router=="/index.html"){
//应根据判断路由的不同,响应不同的页面,给用户看,需要用到另一个模块fs
fs.readFile("./public/html/index.html",(err,buf)=>{
//res:response,响应,后端回答的才叫响应,而,这个res对象,会有一个方法叫做req.end(str/buf);可以进行响应
res.end(buf)
})
}else if(router.match(/html/)!=null){
fs.readFile("./public/html"+router,(err,buf)=>{
//res:response,响应,后端回答的才叫响应,而,这个res对象,会有一个方法叫做req.end(str/buf);
可以进行响应
res.end(buf)
})
}else if(router.match(/css|js|png|gif|jpg|woff|woff2|webp|jpeg/)!=null){
fs.readFile("./public"+router,(err,buf)=>{
//res:response,响应,后端回答的才叫响应,而,这个res对象,会有一个方法叫做req.end(str/buf);可以进行响应
res.end(buf)
})
}
}) -
数据库 1、使用npm安装mongoose第三方模块
2、使用步骤: 1、引入:var mongoose = require('mongoose'); 2、连接数据库:mongoose.connect("mongodb://127.0.0.1/数据库名称"); 3、创建出一个新的数据表的同时,设置数据类型的控制,防止用户乱输: var userSchema=mongoose.Schema({ name: String, age: Number, pwd: String, email: String, vip: String }) // 自定义 选中了你想要操作的某个数据表 var User=mongoose.model("User",userSchema,"数据表名")
4、增: var x=new User({ name: "李红慧",// age: 18, pwd: "123456", email: "lhh@qq.com", vip: 1 }) x.save((err)=>{ console.log("新增完毕要做什么,就在这里做") }) 5、删: User.remove/【deleteOne】/deleteMany({条件},(err)=>{ console.log("删除完毕要做什么,就在这里做") }) 6、改: User.update/【updateOne】/updateMany({条件},{新内容},(err)=>{ console.log("修改完毕要做什么,就在这里做") }) 7、查: User.find({条件},(err,result)=>{ result;//返回的结果,是我们的最爱JSON格式 })