【JS工具方法】解码URL、数组中最大值、支持的transitionend、判断上一页
对url进行解码
在使用前台获取查询字符串中的中文的时候,如/tool/?search=毛笔
获取到的“毛笔”可能是 “%E6%AF%9B%E7%AC%94”这样的字符串。这时候就需要对url进行解码。
var searchVal = '%E6%AF%9B%E7%AC%94';
searchVal = decodeURI(searchVal);
console.log(searchVal) =>> 毛笔
encodeURI()可以对URL进行编码。
decodeURI() 函数可对 encodeURI() 函数编码过的 URI 进行解码。
在线解码、编码地址:https://tool.chinaz.com/tools/urlencode.aspx
支持性:所有主要浏览器都支持 encodeURI() decodeURI()函数
Math.max求数组中最大值
Math.max()函数只能传入一组参数来求最大值,如:
Math.max(1,2,3,4) => 4
如果要求数组中最大值:
Math.max.apply(Math, [1, 2, 3, 4])
或者
Math.max.apply(null, [1, 2, 3, 4])
把this值指向Math对象,则第二个参数可以传入任意数组。
获取浏览器支持的transitionend事件
// 获取浏览器支持的transition事件
function whichTransitionEvent(){
var t,
el = document.createElement('div'),
transitions = {
'transition':'transitionend',
'OTransition':'oTransitionEnd',
'MozTransition':'transitionend',
'WebkitTransition':'webkitTransitionEnd'
}
for(t in transitions){
if( el.style[t] !== undefined ){
return transitions[t];
}
}
}
var transitionEvent = whichTransitionEvent();
使用JS判断上一页的来源
if (document.referrer === '') {
alert(' 没有上一页的记录 ');
}
document.referrer 可以获得上一页的链接地址