var util = {}; /** * 對象轉爲查詢字符串 * @type object * */ util.toQueryString = function(obj) { var str = ""; for (let n in obj) { str += n + "=" + obj[n] + "&"; } str = str.substring(0, str.length - 1); return str; } /** * 查詢字符串轉爲對象 * */ util.parseObject = function(url){ var obj = {}; if(url.indexOf('?')!==-1){ var url = url.substring(url.indexOf('?')+1); }else{ return {}; } var arr = url.split('&'); arr.forEach(function(val){ var brr = val.split('='); obj[brr[0]] = brr[1]; }); return obj; } // 一些其餘方法 function isObject(obj) { return obj !== null && typeof obj === "object"; } function isArray(obj) { return Array.isArray(obj); } function isEmptyObject(obj) { for (let n in obj) { return false; } return true; } // 對象轉爲查詢字符串 function to_query_string(obj) { let str = ""; for (let n in obj) { str += n + "=" + obj[n] + "&"; } str = str.substring(0, str.length - 1); return str; } // 轉字符串 function to_string(obj) { return JSON.stringify(obj) } // 計算字符串的字節長度 function getByteLen(val) { let len = 0; for (let i = 0; i < val.length; i++) { if (val[i].match(/[^\x00-\xff]/gi) != null) { len += 2; } else { len += 1; } } return len } /** * @description 字符串格式轉換:駝峯式 轉爲 下劃線式 * @param {string} str */ function getKebabCase(str) { return str.replace(/[A-Z]/g, function (i) { return '_' + i.toLowerCase() }) } /** * @description 字符串格式轉換:下劃線 轉 駝峯式 * @param {string} str */ function getCamelCase(str) { return str.replace(/_([a-z])/g, function (all, i) { return i.toUpperCase(); }); }