不區分大小寫獲取引數值
阿新 • • 發佈:2020-12-07
你們遇到過這種奇葩情況沒?請求同一個url,不同的平臺傳參的大小寫不一致……這個時候就只能在取參時相容大小寫了。
實現程式碼如下:
/** * 不區分大小寫獲取引數值 * @return {type} param 引數的key * @return {type} keyValue 返回經過相容處理後的引數值 * @author ywy * @date 2020-11-13 */ function getCompatibleParam(param) { var keyValue = ''; // 經過相容處理後的引數值 if (param) { var lowerCaseUrl = location.href.toLocaleLowerCase(); // 轉化為小寫後的url var normalUrl = location.href; //正常url var startIndexOfParam = lowerCaseUrl.indexOf(param.toLowerCase()); console.log('startIndexOfParam————>' + startIndexOfParam); if (startIndexOfParam != -1) { var realKey = normalUrl.slice(startIndexOfParam, startIndexOfParam + param.length); console.log('realKey————>' + realKey); keyValue = getQueryVariable(realKey); } } console.log('keyValue————>' + keyValue); return keyValue; }
呼叫如下:
var userId = getCompatibleParam('userID');
這個時候無論傳userId還是userID還是UserID還是其他的大小寫形式,都可以拿到值了。