记录一些javascript常用方法
- 截取一定长度的字符串(前端展示为了美观,通常需要截取相同长度的字符串作为填充,要保证空间上长度基本一致,这段js用派上用场)
1 | /* |
- echars图片下载(echars生成的图片上有自己带的下载按钮,如果需要在图片外做一个按钮下载相应的echars,这个方法就是你需要的)
1 | // echars图片下载 |
- 日期格式化
1 | // 日期格式化 var yesterDay = new Date(yesterdayTime).Format("yyyy-MM-dd"); |
日期排序
1
2
3
4
5
6
7
8
9
10
11
12//日期排序
function sortDownDate(a, b) {
return Date.parse(a) - Date.parse(b);
}
function sortUpDate(a, b) {
return Date.parse(b) - Date.parse(a);
}
var arr = ['2018-02-02','2018-03-03','2017-03-03','2019-01-01'];
arr.sort(sortDownDate)
arr.sort(sortUpDate)防抖节流
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40// 节流
function throttle (fn, delay=500) {
let prev = 0;
return function () {
let now = new Date();
let args = arguments;
if (now - prev > delay) {
fn.call(this, args)
prev = now;
}
}
}
const input_search = document.getElementById('input_search');
input_search.oninput = throttle(function() {
console.log('*** 输入了内容');
console.log(input_search.value);
}, 500)
// 防抖
function debounce (fn, delay=500) {
let timer = null
return function () {
let context = this;
let args = arguments;
if (timer) {
clearTimeout(timer);
timer = null
}
timer = setTimeout(function(){
fn.call(context, args)
}, delay)
}
}
const btn_search = document.getElementById('btn_search');
btn_search.onclick = debounce(function () {
console.log('*** 点击了');
console.log(this);
}, 500)