Javascript 实用api
风中勁草 2021-10-20 javascript
# 字符填充 padStart(可以在 1~12 月填充时使用)
String.prototype.padStart()
const str1 = '5';
console.log(str1.padStart(2, '0'));
// expected output: "05"
const fullNumber = '2034399002125581';
const last4Digits = fullNumber.slice(-4);
const maskedNumber = last4Digits.padStart(fullNumber.length, '*');
console.log(maskedNumber);
// expected output: "************5581"
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
# 生成随机数 CSPRNG
function randomFloat() {
// 生成 32 位随机值
const fooArray = new Uint32Array(1);
// 最大值是 2^32 –1
const maxUint32 = 0xFFFFFFFF;
// 用最大可能的值来除
return crypto.getRandomValues(fooArray)[0] / maxUint32;
}
console.log(randomFloat());
// 0.503365161945895
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
# 中断请求
Fetch API 支持通过 AbortController/AbortSignal 对中断请求。调用 AbortController. abort()会中断所有网络传输,特别适合希望停止传输大型负载的情况。中断进行中的 fetch()请求会 导致包含错误的拒绝。
let abortController = new AbortController();
fetch('wikipedia.zip', { signal: abortController.signal })
.catch(() => console.log('aborted!');
// 10 毫秒后中断请求
setTimeout(() => abortController.abort(), 10);
// 已经中断
1
2
3
4
5
6
7
2
3
4
5
6
7
# 写入剪切板
navigator.clipboard.writeText(text)
1