小案例 JavaScript BOM_search处理

        在Web开发中,我们经常需要从当前页面的url中获取相应的键值对中的值;例如:要从“http://www.jiongxiake.com/np?id=03&search=wd”中获取id值,那么就要求我们写一个函数来一一获取;
        具体操作过程如下:

1. 封装函数,参数为需要进行操作的url和要寻找的建key
function getValue(url,key){}
2. 找出形参key在url中第一次出现的位置
var start = search.indexOf(key);

        如果start值为-1,代表没有找到相应的key值,反之进行下一步操作;

3.找到key结束的位置(url中每个键值对都以"&"分割)
var end = search.indexOf("&",start);

        如果end值为-1,则可以断定key为url中最后一个键对值;

if(end == -1){
	//key是最后一个键值对
	end = search.length;
}
4.依靠start与end值将键值提取出来
var str = search.substring(start,end);
5.“key = value”,获取value值并作为函数返回值返回
//需要获取value
var arr = str.split('=');
return arr[1];
函数部分代码如下:
function getValue(search,key){
	//(1)找出key 第一次出现的位置
	var start = search.indexOf(key);
	if(start == -1){
		return;
	}
	else{
	//(2)找出key结束的位置
		var end = search.indexOf("&",start);
		if(end == -1){
			//key是最后一个键值对
			end = search.length;
		}
	}
	//(3)将这个键值对提取出来
	var str = search.substring(start,end);
	//(4)key = value 需要获取value
	var arr = str.split('=');
	return arr[1];
}	
代码测试:
var url = "http://www.jiongxiake.com/np?id=03&search=wd";
console.log(getValue(url,"id")); // 03

猜你喜欢

转载自blog.csdn.net/weixin_44990584/article/details/106245869