面试题之 query转为obj
要注意处理编码后的字串 对于a=123要得到number形的值
function parseQueryString(url) {
var obj = {};
var query = url.search.slice(1).split('&'); //截取问号之后的部分
query.forEach(function(item){
//若str没有= 返回 [str]
//缺失任何一方 则是空字符串
var key = item.split('=')[0];
var value = decodeURIComponent(item.split('=')[1]);
//对于数值形字符串要转为数字
value = !isNaN(value) ? +value : value;
obj[key] = value;
});
return obj;
}
var link = document.createElement('a');
link.href = "http://www.example.com/some/path?name=123&w=blog%3Acart55free99%20微软%20bootstrap#anchor";
var obj = parseQueryString(link);
console.log(obj);
没有直接创建localtion对象的方法 可以创建Anchor的方式来创建一个localtion对象
var link = document.createElement('a');
link.href = "http://www.example.com/some/path?name=123&w=blog%3Acart55free99%20微软%20bootstrap#anchor";
面试题之 query转为obj的更多相关文章
- {}typeof string转为 obj json
<script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/1.11.3/jquer ...
- python django基础四 ORM简介
ORM,全称是object relation mapping.翻译过来,就是对象关系映射. 主要来学习MySQL操作,MySQL是一个软件.它的优点:1.免费 2.开源 pymysql,就是Mysql ...
- python 全栈开发,Day71(模型层-单表操作)
昨日内容回顾 1. {% include '' %} 2. extend base.html: <html> ..... ..... ..... {% block content%} {% ...
- JDBC辅助类封装 及应用
一:代码图解: 二:配置文件: driverClassName=com.mysql.jdbc.Driver url=jdbc\:mysql\://127.0.0.1\:3306/xlzj_sh_new ...
- java对接微信支付
对接微信扫码支付(模式2),前端使用velocity技术 (1)调用微信支付接口(view层) 此部分业务逻辑部分可以省略 @RequestMapping("/wxpay.htm" ...
- Django基础(3)----模型层-单表操作,多表创建
昨日内容回顾: 1. {% include '' %} 2. extend base.html: <html> ..... ..... ..... {% block content%} { ...
- Vue 全家桶,深入Vue 的世界
内容简介: Vue 实例上的属性 Vue 生命周期 Vue 数据绑定 computed 计算属性 watch 监听器 Vue 组件 Vue 组件 extend Vue 组件高级属性 Vue 的rend ...
- C# dynamic 动态创建 json
1. 如何通过C# 的dynamic 创建如下json 对象? { "query": { "match": [{ "name": " ...
- TObject、Pointer、Interface的转换
unit Unit4; )); )); )); //将Obj转为接口 //LInf1 := ITest(Pointer(LObj1)); //无法转换了,丢失了接口信息 ...
随机推荐
- OCI_INVALID_HANDLE 什么原因
查看oci.dll应用版本和服务器版本是否一致
- 安装Ubuntu小计
因为想学Linux了,所以想装一个Linux版本尝尝鲜,听说Ubuntu桌面版很炫,所以也没有啥特定理由的选了这个版本(实际我装的时候用了Ubuntu Kylin). 具体安装过程可以参考如下的教程: ...
- jQuery相关知识
1.jQuery中$符号有何作用? $作为jQuery的别名,如$(document).ready() 即是 jQuery(document).ready() 2.jQuery选择器有哪几种? 基本选 ...
- PHP环境(apache,PHP,Mysql)详细配置方法
1.安装Apache ,直接运行安装即可,我们将其安装到D:\PHP\Apache/目录下 2.将PHP压缩包解压内容放到指定目录(例如:D:\PHP\Php5,将目录中的PHP.iniDevelop ...
- <a>标签中 href="/" 和 hideFocus="true"
一:href="/" 连接到根目录 这是相对路径的根目录表示方法 可以写为 http://class.qq.com/">腾讯精品课 (绝对路径写法) 也可以为 腾讯 ...
- python初学笔记(三)
Unicode字符串 字符串还有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特(bit)作为一个字节 (byte),所以,一 ...
- TLC是什么
TLC = Triple-Level Cell,即3bit/cell,它的寿命短,速度慢,约500-5000次擦写寿命. 现在U盘多为MLC,TLC也有一部分,将来TLC会占大部分市场. 一种名为TL ...
- git操作标签
操作标签 如果标签打错了,也可以删除: $ git tag -d v0.1 Deleted tag 'v0.1' (was e078af9) 因为创建的标签都只存储在本地,不会自动推送到远程.所以,打 ...
- Redis用户添加、分页、登录、注册、加关注案例
连接redis代码redis.php <?php //实例化 $redis = new Redis(); //连接服务器 $redis->connect("localhost&q ...
- 达内TTS6.0课件oop_day03