亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JS如何獲取URL中的Query參數

 更新時間:2023年01月17日 09:18:54   作者:loki951753  
這篇文章主要介紹了JS如何獲取URL中的Query參數問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

JS獲取URL的Query參數

需求描述

獲取 URL 中的 Query 參數,例如:

https://www.example.com/test.html?a=param1&b=param2

代碼片段

實現一

使用URLSearchParams對象,兼容性見Can I use

const urlString = 'https://www.example.com/test.html?a=param1&b=param2';
const urlObj = new URL(urlString);
const [a, b] = urlObj.searchParams.values();

實現二

function parseSearchParams(searchParamsString){
    return searchParamsString.split('&').reduce((searchParams, curKV)=>{
        const [k, v] = curKV.split('=').map(decodeURIComponent);
        searchParams[k] = v;

        return searchParams;
    }, {});
}

JS獲取URL上的指定參數

function getAllUrlParams(url) {

	// get query string from url (optional) or window
	var queryString = url ? url.split('?')[1] : window.location.search.slice(1);

	// we'll store the parameters here
	var obj = {};

	// if query string exists
	if (queryString) {

		// stuff after # is not part of query string, so get rid of it
		queryString = queryString.split('#')[0];

		// split our query string into its component parts
		var arr = queryString.split('&');
		for (var i = 0; i < arr.length; i++) {
			// separate the keys and the values
			var a = arr[i].split('=');
			// in case params look like: list[]=thing1&list[]=thing2
			var paramNum = undefined;
			var paramName = a[0].replace(/\[\d*\]/, function (v) {
				paramNum = v.slice(1, -1);
				return '';
			});
			// set parameter value (use 'true' if empty)
			var paramValue = typeof (a[1]) === 'undefined' ? true : a[1];
			// if parameter name already exists
			if (obj[paramName]) {
				// convert value to array (if still string)
				if (typeof obj[paramName] === 'string') {
					obj[paramName] = [obj[paramName]];
				}
				// if no array index number specified...
				if (typeof paramNum === 'undefined') {
					// put the value on the end of the array
					obj[paramName].push(paramValue);
				}
				// if array index number specified...
				else {
					// put the value at that index number
					obj[paramName][paramNum] = paramValue;
				}
			}
			// if param name doesn't exist yet, set it
			else {
				obj[paramName] = paramValue;
			}
		}
	}
	return obj;
};
var x = getAllUrlParams('http://127.0.0.1:5000/app/index.html?code=KXMvRUkC92WaJ6n3vELMU3iK2128879&state=').code;
console.log(x);

總結

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • JavaScript定義及輸出螺旋矩陣的方法詳解

    JavaScript定義及輸出螺旋矩陣的方法詳解

    這篇文章主要介紹了JavaScript定義及輸出螺旋矩陣的方法,簡單描述了螺旋矩陣的概念、原理并結合實例形式分析了javascript定義與輸出螺旋矩陣的具體操作技巧,需要的朋友可以參考下
    2017-12-12
  • JS實現異步上傳壓縮圖片

    JS實現異步上傳壓縮圖片

    這篇文章主要為大家詳細介紹了JS實現異步上傳壓縮圖片,并立即顯示圖片,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • script標簽屬性type與language使用選擇

    script標簽屬性type與language使用選擇

    很多使用javascript的朋友都有著這樣一個問題:script標簽屬性type與language使用應如何選擇,為解決此疑惑,本文詳細整理了一下,需要的朋友可以參考下
    2012-12-12
  • 12 款 JS 代碼測試必備工具(翻譯)

    12 款 JS 代碼測試必備工具(翻譯)

    這篇文章主要介紹了12 款 JS 代碼測試必備工具(翻譯),需要的朋友可以參考下
    2016-12-12
  • JavaScript實現瀏覽器網頁自動滾動并點擊的示例代碼

    JavaScript實現瀏覽器網頁自動滾動并點擊的示例代碼

    這篇文章主要介紹了JavaScript實現瀏覽器網頁的自動滾動并點擊的示例代碼,幫助大家更好的理解和學習JavaScript的使用,感興趣的朋友可以了解下
    2020-12-12
  • 網頁圖片延時加載的js代碼

    網頁圖片延時加載的js代碼

    大家如果使用firebug去查看的話就會發(fā)現,當你滾動到相應的行時,當前行的圖片才即時加載的,這樣子的話頁面在打開只加可視區(qū)域的圖片,而其它隱藏的圖片則不加載,一定程序上加快了頁面加載的速度,對于比較長的頁面來說,這個方案是比較好的。
    2010-04-04
  • js拖拽的原型聲明和用法總結

    js拖拽的原型聲明和用法總結

    這篇文章主要為大家詳細介紹了js拖拽的原型聲明和用法總結,感興趣的朋友可以參考一下
    2016-04-04
  • javascript簡單鏈式調用案例分析

    javascript簡單鏈式調用案例分析

    這篇文章主要介紹了javascript簡單鏈式調用,結合具體實例形式模擬jQuery分析了鏈式調用的原理與具體實現技巧,需要的朋友可以參考下
    2017-05-05
  • XHTML-Strict 內允許出現的標簽

    XHTML-Strict 內允許出現的標簽

    XHTML-Strict 內允許出現的標簽...
    2006-12-12
  • blob轉換成string格式同步調用問題解決分析

    blob轉換成string格式同步調用問題解決分析

    這篇文章主要為大家介紹了blob轉換成string格式同步調用問題解決分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-05-05

最新評論