-
Notifications
You must be signed in to change notification settings - Fork 83
Open
Labels
articlesmall articlesmall article
Description
获取一个地址的参数
const getURLParameters = (url=location.href) =>
(url.match(/([^?=&]+)(=([^&]*))/g) || []).reduce(
(a, v) => ((a[v.slice(0, v.indexOf('='))] = v.slice(v.indexOf('=') + 1)), a),
{}
);
console.log(getURLParameters()); //不传参数默认获取当前地址
console.log(getURLParameters('https://www.baidu.com/s?wd=s&rsv_spt=1&rsv_sug4=4')); //{wd:'s', rsv_spt:'1', rsv_sug4:'4'}httpGet
const httpGet = (url, callback, err = console.error) => {
const request = new XMLHttpRequest();
request.open('GET', url, true);
request.onload = () => callback(request.responseText);
request.onerror = () => err(request);
request.send();
};httpPost
const httpPost = (url, data, callback, err = console.error) => {
const request = new XMLHttpRequest();
request.open('POST', url, true);
request.setRequestHeader('Content-type', 'application/json; charset=utf-8');
request.onload = () => callback(request.responseText);
request.onerror = () => err(request);
request.send(data);
};isBrowser
const isBrowser = () => ![typeof window, typeof document].includes('undefined');
随机一个16进制的颜色
const randomHexColorCode = () => {
let n = (Math.random() * 0xfffff * 1000000).toString(16);
return '#' + n.slice(0, 6);
};转货币
const toCurrency = (n, curr, LanguageFormat = undefined) =>
Intl.NumberFormat(LanguageFormat, { style: 'currency', currency: curr }).format(n);
console.log(toCurrency(123656.789, 'CNY')); //¥123,656.79
console.log(toCurrency(123656.789, 'USD','en-us')); //$123,656.79
具体参考: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/NumberFormat
Metadata
Metadata
Assignees
Labels
articlesmall articlesmall article