概述
一.数组的高阶方法
forEach 遍历
arr1.forEach(function(item,index,self){
// //item被遍历的元素
// //index 当前遍历的下标
// //self当前数组对象
console.log(arr1);
})
filter 过滤 返回true保理,返回false 过滤掉
var arr1 = [1,4,2,30,4,2,99];
var arr3 = arr1.filter(function(item,index,self){
return item>10;
})
console.log(arr3);
alert(arr1.indexOf(4))
var arr4 = arr1.filter(function(item,index){
//如果indexOf的下标等于遍历的下标
if(arr.indexOf(item)===index){
return true;
}else{
return false;
}
})
console.log(arr4)
var arr1 = ["我","喜欢","javascript"]
//2.map映射出新的数组
var arr2 = arr1.map(function(item,index,self){
//返回数组的每一项
return{
name:item
};
})
map 映射
reduce 累计
var arr1 = [1,2,3,4];
//默认a等于1,b等于2
//第二次 a=3,b=3
//第三次 a=6,b=4
//结果 6+10
var re = arr1.reduce(function(a,b){
return a+b;
//返回的结果是下一次a
return a*10+b;
})
alert(re);
every 每一个返回true,最终返回true
some 有一个返回true 最终返回true
var arr = [70,90,50,40,100,80,55];
var re1 = arr.every(function(item){
return item > 80
})
var re2 = arr.some(function(item){
return item > 80
})
console.log(re1,"re1");
console.log(re2,"re2");
find 查找符合条件的元素
findIndex 查找符合条件的下标
var arr = [1,2,20,8,50,-10];
//查找数组中第一个大于10的数
var re = arr.find(function(item,index){
return item > 10
//当返回为true,
// 最终的结果为当前item
})
console.log(re,"re")
//查找数组中第一个大于10的下标
var re2 = arr.findIndex(function(item){
return item>10;
//当返回true
//最终结果为当前item
})
console.log(re2,"re2")
sort 排序
var arr = [1,2,20,8,50,-10];
arr.sort(function(a,b){
return b-a;
});
console.log(arr);
数组去重
//filter 通过索引与下标去重
arr.filter((item,index)=>arr.indexOf(item)==index)
arr.filter(function(item,index){
if(arr.indexOf(item)==index){return true}
else{return false}
})
//set去重
var arr1 = [...new Set(arr)]
var arr1 = Array.from(new set(arr))
判断js类型
typeof 对值类型有用
引用类型除函数返回object
instance of 是某个类的实例
在原型链查找到该对象都返回true
constructor 构造函数
Obiect.prototype.toString.call(对象).slice(8,-1)
二.mysql在nodejs使用
0.安装nodejs
npm i mysql -S
1。导入
var mysql = require("mysql");
2.创建连接
var con = mysql.createConnection({
host:"localhost",
user:"root",
password:"123456",
database:"feedback"
})
3.连接
con.connect(function(err){
if(!err){
console.log("连接数据库成功")
}else{
console.log("数据库连接错误:",err)
}
})
4.执行sql
var sql = `select * from user where 1`;
con.query(sql,function(err,result){
if(!err){
//输出结果
console.log(result)
}else{
console.error("数据库操作错误")
}
})
5.断开sql
con.end(function(err){
if(err){
console.log("断开成功")
}
})
三.express前后端不分离
0 安装模板
1.设置模板
app.set("views","./views")
app.set("view engin","ejs");//使用ejs引擎
2.定义模板
app.set('view engine','ejs');
3.定义路由
app.get("/user",function(req,res){
res.render("user",{title,list})
//渲染/view/user.ejs模板,并传入数据{title:"",list:[]}
})
4.ejs模板语法
//<% = %>渲染数据的
//<% %>执行js的
<p><% =title %></p>
将会把标题渲染到p标签里面
list.forEach(item=>{
<li></li>
})
<% list.forEach(item=>{ %>
<li><% =item %></li>
<% }); %>
express前后端分离
get
app.get("list",function(req,res){
res.json({})//发送给客户端
})
post
1.使用中间件
app.user(express.json())
app.post("/adduser",function(req,res){
//req.body 客户端发给后端的数据body
req.json({})//发送数据给客户端
})
最后
以上就是可耐棒棒糖为你收集整理的数组的高阶方法、mysql在nodejs里使用的全部内容,希望文章能够帮你解决数组的高阶方法、mysql在nodejs里使用所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复