代码改变世界

{} 与 function() { } , 选用空对象{}来存放keyValue

2012-05-22 11:08  flowforever  阅读(406)  评论(0编辑  收藏  举报

虽说js里面什么都能当对象,也能用填鸭式方法任意给对象添加属性,属性赋值.但是有些js内置的对象,类型属性也是没办法覆盖的。

贪多必失,写了一个用操作url 的js工具类,这个类上面有个属性叫queryString,我原来的做法是让queryString=function(){} ,

想法是希望能够queryString[key]或者queryString(key[,value])这样两种写法都支持,通过queryString[key] 方式调用key大小写敏感

通过queryString(key)则可以大小写无关。

今天杯具的发现url中带name参数死活都设置不上去,突然想起来queryString是个匿名函数,name,length等属性是只读的,

还是地乖乖改成queryString = {} ; 用另外的一个param(key[,value]) 来实现大小写无关的功能。

今天得到结论是用来放keyValue的字段最好不要使用function(){}这样已经有内置属性的类型来存放keyValue。

码农辛苦贴 转载请注明来自博客园 flowforever .