js编程

1、请编写一个JavaScript函数 parseQueryString,它的用途是把URL参数解析为一个对象,如:var url = “http://witmax.cn/index.php?key0=0&key1=1&key2=2″;

function parseQueryString(url){

var params={};

var arr=url.split('?');

if(arr.length<=1)

return params;

arr=arr[1].split("&");

for(var i=0;i<arr.lengrh;i++){

var a=arr[i].split("=");

params[a[0]]=a[1];

return params;

}

2\JavaScript中如何检测一个变量是一个String类型?请写出函数实现

function isString(str){

return (typeof(str)=="string"||str.constructor==String);

}

3、编写一个方法 去掉一个数组的重复元素

var arr=[1,1,3,4,2,1,5]

Array.prototype.unique=function(){

var ret=[]'

var o={};

var len=this.length;

for(var i=0;i<len;i++){

var v=this[i[;

if(!o[v]){

o[v]=1;

ret.push(v);

}

}

return ret;

}

4、全排列算法的递归与非递归实现

递归算法采用分而治之的思想:考虐序列p1p2p3...pn可以分解p1+C(p2p3...pn)

function combination(arr){

 var len=arr.length;

if(len==2){

var a=arr[0],b=arr[1];

return [a+b,b+a];

}

else if(len==1) return arr;

else{

var strPtn='';

for(var i=0;i<len;i++){

strRtn+=merge(arr[i],combination(arr.slice(0,i).concat(arr.slice(i+1,len)))).join(',')+',';

}

return strRtn.replace(/\,$/,'').split(",")0

}

}

function merge(head,arr){

for(var i=0;i<arr.length;i++)

arr[i]=head+arr[i];

return arr;

}


http://blog.youkuaiyun.com/jtlyuan/article/details/7455868







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值