JavaScript 获取地址栏指定参数(整理)

简介: JavaScript 获取地址栏指定参数(整理)
假如当前地址栏链接为:https://test.com/?type=students&page=3
//获取参数方法1
function UrlSearch()
{
    var name,value;
    var str=location.href; //取得整个地址栏
    var num=str.indexOf("?");
    str=str.substr(num+1); //取得所有参数   stringvar.substr(start [, length ]
    var arr=str.split("&"); //各个参数放到数组里
    for(var i=0;i < arr.length;i++){
        num=arr[i].indexOf("=");
        if(num>0){
            name=arr[i].substring(0,num);
            value=arr[i].substr(num+1);
            this[name]=value;
        }
    }
}
var UrlSearch=new UrlSearch();   //实例化
alert(UrlSearch.type);   //students
alert(UrlSearch.page);   //3
alert(UrlSearch.studentid);   //undefined
//获取参数方法2---一般用这个
function getParameter(name) {
    var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
    var r = window.location.search.substr(1).match(reg);
    if (r != null) {
        return decodeURI(r[2])
    }
    return null
}
alert(getParameter('type'));   //students
alert(getParameter('page'));   //3
alert(getParameter('studentid'));   //null
二、获取url链接对象取值
//转译
encodeURIComponent("https://zhidao.baidu.com");
//https%3A%2F%2Fzhidao.baidu.com
//逆转译
decodeURIComponent("https%3A%2F%2Fzhidao.baidu.com");
//https://zhidao.baidu.com
var url = decodeURIComponent(location.search); //包括问号;
// var url = 'https://api.zhongshi.cn/h5/login.html?{"type":"question","id":"67359","vip":true,"appid":"wx43992d7d489d8e53"}';
var indexOf = url.indexOf("?");
if (indexOf !=-1) {
  var a = url.substr(indexOf + 1);
  var obj = JSON.parse(a);   //这个是正确的转换
  console.log(obj,'34');
  appid = obj.appid;  //获取对象中某个参数值
}
相关文章
|
3天前
|
前端开发
用html+javascript打造公文一键排版系统3:获取参数设置、公文标题排版
用html+javascript打造公文一键排版系统3:获取参数设置、公文标题排版
|
29天前
|
JavaScript 前端开发
JavaScript基础知识-函数的参数
关于JavaScript函数参数基础知识的介绍。
18 4
JavaScript基础知识-函数的参数
|
8天前
|
JavaScript 前端开发
JavaScript 函数参数
JavaScript 函数参数
22 3
|
6天前
|
前端开发 JavaScript
前端JS截取url上的参数
文章介绍了两种前端JS获取URL参数的方法:手动截取封装和使用URLSearchParams。
18 0
|
3月前
|
JavaScript 前端开发 网络架构
JavaScript编码之路【对象的增强、ES6新特性之函数的默认值设置 、rest参数 (剩余参数)、拓展运算符、对象与数组的解构赋值】
JavaScript编码之路【对象的增强、ES6新特性之函数的默认值设置 、rest参数 (剩余参数)、拓展运算符、对象与数组的解构赋值】
49 1
|
3月前
|
存储 资源调度 前端开发
JavaScript 使用axios库发送 post请求给后端, 给定base64格式的字符串数据和一些其他参数, 使用表单方式提交, 并使用onUploadProgress显示进度
使用 Axios 发送包含 Base64 数据和其他参数的 POST 请求时,可以通过 `onUploadProgress` 监听上传进度。由于整个请求体被视为一个单元,所以进度可能不够精确,但可以模拟进度反馈。前端示例代码展示如何创建一个包含 Base64 图片数据和额外参数的 `FormData` 对象,并在上传时更新进度条。后端使用如 Express 和 Multer 可处理 Base64 数据。注意,实际进度可能不如文件上传精确,显示简单加载状态可能更合适。
|
3月前
|
JavaScript 前端开发 数据格式
URL编码【详解】——Javascript对URL进行编码解码的三种方式的区别和使用场景,axios请求拦截器中对get请求的参数全部进行URL编码
URL编码【详解】——Javascript对URL进行编码解码的三种方式的区别和使用场景,axios请求拦截器中对get请求的参数全部进行URL编码
98 0
|
3月前
|
JavaScript
js 获取并解析 url 中参数的三种方法
js 获取并解析 url 中参数的三种方法
46 0
|
4月前
|
JavaScript
fastadmin js里获取后端传的参数
fastadmin js里获取后端传的参数
97 0
|
4月前
|
JavaScript
js -- 函数总结篇,函数提升、动态参数、剩余参数、箭头函数、this指向......
js -- 函数总结篇,函数提升、动态参数、剩余参数、箭头函数、this指向......