一,数字问题
整除问题:
Math.ceil(count / pagesize); //向上整除 4/3=2;
Math.floor(count / pagesize); //向下整除 4/3=1;
Math.round(5/2);//四舍五入
parseInt(5/2);//丢弃小数部分,保留整数部分
处理保留小数点后几位的问题:
// 方法一:四舍五入,传入的参数值是保留小数点后几位
// 作用对象是number,返回值是string类型
var number = number.toFixed(3)
// 方法二:不四舍五入,floor(x)方法是返回小于等于x的最大整数
Math.floor(15.7784 *100) / 100
// 当做字符串,使用正则表达式,这种方法不能用于整数,必须写成10.0000这种
Number(15.3467).toString().match(/^d+(?:.d{0,2})?/))
//直接四舍五入最接近的整数
Math.round(2.5) //3
// 直接丢弃小数部分
ParseInt(5/2)
// 向上取整
Math.ceil(5/2)
// 向下取整
Math.floor(5/3)
二,类型转换问题
数组转字符串:
arr.toString()
arr.toLocaleString() //转换成本地约定的字符串,还可以把Date对象转换为字符串
arr.join() //用join传入的参数作为分割符,默认逗号隔开
字符串转数组:
str.split() //传入参数为分割符,如果不传会将整个字符串作为一个整体传入,传入空格那么会将每个字符都分开
...str //将字符串每一个字符作为一项
三,对象问题
delete object.key //删除对象的一个属性
Object.values(obj) //获取对象的所有值对,放在一个数组里
Object.keys(obj) //获取对象的所有键对,放在一个数组里
四,处理请求数据
**JSON.parse()**——字符串转化为json对象 后端传回的数据如果是字符串的话要使用这个方法转化为json对象
**JSON.stringify()**——json对象转化为字符串 一般我们存储数据到本地一般都会将其转化为字符串
五,数组问题
数组去重
// 根据对象的id去重
unique(arr){
const res = new Map()
return arr.filter((arr)=>!res.has(arr.id)&&res.set(arr.id,1))
}
// Map.has方法返回一个布尔值,指定具有指定键的元素是否存在
数组过滤
//返回值为新数组,但是是浅拷贝
array.filter((item,index,array)=>{return 条件为真的item会保留})
//每个元素调用一次函数的返回值组成
array.map((item,index,array)=>{return item*2})