js字符串转译为unicode的方法:
function encodeUnicode(str) {
var res = [];
for ( var i=0; i<str.length; i++ ) {
res[i] = ( "00" + str.charCodeAt(i).toString(16) ).slice(-4);
}
return "\\u" + res.join("\\u");
}
unicode解码方法
function decodeUnicode(str) {
str = str.replace(/\\/g, "%");
return unescape(str);
}
js对象(object)变成url的形式
>注意: 返回后的字符串第一位是& 可以将其通过.splice(1)去掉或者使用.replace("&","?")将&符号变为?符号
var urlEncode = function(param, key, encode) {
if (param==null) return '';
var paramStr = '';
var t = typeof (param);
if (t == 'string' || t == 'number' || t == 'boolean') {
paramStr += '&' + key + '=' + ((encode==null||encode) ? encodeURIComponent(param) : param); //如果不需要把参数做encode加密 就将下面的else参数encode去掉并且这里的最后+param即可
} else {
for (var i in param) {
var k = key == null ? i : key + (param instanceof Array ? '[' + i + ']' : '.' + i)
paramStr += urlEncode(param[i], k, encode)
}
}
return paramStr;
}
列表的排序
var compare = function (prop) {
return function (obj1, obj2) {
var val1 = obj1[prop];
var val2 = obj2[prop];
if (!isNaN(Number(val1)) && !isNaN(Number(val2))) {
val1 = Number(val1);
val2 = Number(val2);
}
if (val1 < val2) {
return -1;
} else if (val1 > val2) {
return 1;
} else {
return 0;
}
}
}
self.details.sort(compare("END_TIME"));//END_TIME是你需要拿来对比的属性(参数)