js 格式化地址栏字符串成对象

Posted 薇依

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 格式化地址栏字符串成对象相关的知识,希望对你有一定的参考价值。

前端表单中的数据提交给服务器后,是具有一定格式的,后台若要用到提交的数据,是需要进行一定的转换的,以提交至浏览器页面地址栏为例,将数据装换成对象

eg:http://www.baidu.com?name=jack&age=30&sex=0

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>格式化地址栏字符串成对象</title>
    </head>
    <body>
        <script type="text/javascript">
            var str = "http://www.baidu.com?name=jack&age=30&sex=0";
            function fun(str){
//                方法1
//                var num = str.indexOf("?");
//                var str1 = str.slice(num+1);
//                var str2  = str1.split("&");
//                for (var i=0;i<str2.length;i++) {
//                    str2[i] = str2[i].split("=");
//                }
//                console.log(str2);
//                var obj = {};
//                for (var j = 0;j<str2.length;j++) {
//                    if (!isNaN(str2[j][1])) {
//                        str2[j][1] = Number(str2[j][1]);
//                    }
//                    obj[str2[j][0]]=str2[j][1];
//                }
                var str1 = str.split("?")[1];
                var str2 = str1.split("&");
                var obj = {}
                console.log(str2)
                for(var i = 0;i<str2.length;i++){
                    var a = str2[i].split("=");
                    console.log(a)
                    obj[a[0]] = a[1]
                }
                return obj
            }
            
            console.log(fun(str));
            //输出结果格式:(对象)
//            {
//                name : "jack",
//                age : 30,
//                sex : 0
//            }
            
        </script>
    </body>
</html>

 

以上是关于js 格式化地址栏字符串成对象的主要内容,如果未能解决你的问题,请参考以下文章

JS获取URL的参数

html怎么实现ajax异步处理?

JS替换地址栏参数值

java中把json怎么转换成数组?

怎么把json字符串转成数组对象

js怎么解析geojson 格式的