js拆分字符串的方法(笔记)
一共2种方式,第一种使用普通的字符串函数:
var url = "www.baidu.com/s?name=tt&age=18"// -> indexOf() 检测当前字符串中第一次出现("?")的位置索引,如果是-1 表示没有。
// -> split 按照某个字符把字符串拆分成数组中的每一项
// -> charAt charCodeAt substrsubstring slice...字符串常用的方法
function queryURLParameter(url){
let obj = {};
if (url.indexOf('?')<0) return obj;
let ary = url.split('?');
urlParameter = ary[1];
data = https://www.it610.com/article/urlParameter.split('&');
for (var i = 0;
i < data.length;
i++) {
let curl = data[i],
curAry = curl.split('=');
obj[curAry[0]] = curAry[1];
}
return obj;
}
console.log(queryURLParameter(url));
第二种使用正则:
var url = "www.baidu.com/s?name=tt&age=18"// => 使用正则进行匹配
function queryURLParamteter(url){
let reg = /([^&?=]+)=([^&?=]+)/g,
obj = {};
url.replace(reg,function(){
obj[arguments[1]] = arguments[2];
})
return obj;
}console.log(queryURLParamteter(url));
【js拆分字符串的方法(笔记)】把正则写成面向对象会更好些:
var url = "www.baidu.com/s?name=tt&age=18"
String.prototype.myQueryURLParameter = function(){
let reg = /([^&?=]+)=([^&?=]+)/g,
obj = {};
this.replace(reg,(...arg)=>{
obj[arg[1]] = arg[2]
});
return obj;
}console.log(url.myQueryURLParameter());
推荐阅读
- 热闹中的孤独
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- 放屁有这三个特征的,请注意啦!这说明你的身体毒素太多
- 一个人的旅行,三亚
- 布丽吉特,人生绝对的赢家
- 慢慢的美丽
- 尽力
- 一个小故事,我的思考。
- 家乡的那条小河
- 《真与假的困惑》???|《真与假的困惑》??? ——致良知是一种伟大的力量