1.从一个对象数组中根据属性值大小排序
var compare = function(property, desc) {
return function (a, b) {
let value1 = a[property];
let value2 = b[property];
if (desc == true) {
// 升序排列
return value1 - value2;
} else {
// 降序排列
return value2 - value1;
}
}
}
//调用示例
var sdts = [
{name:"小明",age:30},
{name:"小红",age:20},
{name:"小花",age:40}
]
var newSdts = sdts.sort(compare("age",true))
2.格式化数字,显示千分符
var toThousands = function (num) {
var num = (num || 0).toString(), result = '';
while (num.length > 3) {
result = ',' + num.slice(-3) + result;
num = num.slice(0, num.length - 3);
}
if (num) { result = num + result; }
return result;
}
console.log(toThousands(789456123)) //789,456,123
var changeNum = function(data) {
data = data * 1
var thisData = data.toLocaleString();
return thisData
}
console.log(changeNum(789456123)) //789,456,123
3.格式化数字 万,亿(保留两位小数)
var formatNumber = function (num) {
var num = (num || 0), result = '';
if(num > 100000000){
result = (num / 100000000).toFixed(2) + '亿';
}else if(num > 10000){
result = (num / 10000).toFixed(2) + '万';
}
return result;
}
console.log(formatNumber(789456123)) //7.89亿
4.返回当前或n天前/n天后的日期
var getDate = function(n,char) {
if(n == 0 || !n){
n = 0
}else{
n = n
}
if(char){
char = char
}else{
char = "-"
}
let d = new Date();
let year = d.getFullYear();
let mon = d.getMonth() + 1;
let day = d.getDate();
if (day <= n) {
if (mon > 1) {
mon = mon - 1;
} else {
year = year - 1;
mon = 12;
}
}
d.setDate(d.getDate() + n);
year = d.getFullYear();
mon = d.getMonth() + 1;
day = d.getDate();
s = year + char + (mon < 10 ? ('0' + mon) : mon) + char + (day < 10 ? ('0' + day) : day);
return s;
}
console.log(getDate(-1,"/")) //2022/08/08
console.log(getDate(0)) //2022-08-09
console.log(getDate(1)) //2022-08-10
5.获取当前 完整时间(年-月-日 时:分:秒)
var nowDateTime = function() {
let time = new Date();
let year = time.getFullYear()
let months = time.getMonth() + 1;
let dates = time.getDate();
let day = time.getDay(); //星期
let hs = time.getHours();
let ms = time.getMinutes();
let ss = time.getSeconds();
let month = function () {
if (months >= 10) {
return months
} else {
return '0' + months
}
}
let date = function () {
if (dates >= 10) {
return dates
} else {
return '0' + dates
}
}
let h = function () {
if (hs >= 10) {
return hs
} else {
return '0' + hs
}
}
let m = function () {
if (ms >= 10) {
return ms
} else {
return '0' + ms
}
}
let s = function () {
if (ss >= 10) {
return ss
} else {
return '0' + ss
}
}
return year + "-" + month() + "-" + date() + " " + h() + ":" + m() + ":" + s(); //2022-08-09 15:40:42
}
后续持续添加