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

贪多必失,写了一个用操作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。

时间: 2012-05-21

js删除对象/数组中null、undefined、空对象及空数组方法示例

这两天在项目中遇到后台需要传的数据为不能有null,不能有空值,而这个数据又是一个庞大的对象,对组集合,所以写了个方法来解决这个问题.为了兼具所有的种类类型,封装了方法,代码如下: let obj = { a: { a_1: 'qwe', a_2: undefined, a_3: function (a, b) { return a + b; }, a_4: { a_4_1: 'qwe', a_4_2: undefined, a_4_3: function (a, b) { return a +

PHP使用new StdClass()创建空对象的方法分析

本文实例讲述了PHP使用new StdClass()创建空对象的方法.分享给大家供大家参考,具体如下: PHP可以用 $object = new StdClass(); 创建一个没有成员方法和属性的空对象. 很多时候,程序员们会将一些参数配置项之类的信息放在数组中使用,但是数组操作起来并不是很方便,很多时候使用对象操作符->xxx比数组操作符['xxx']要方便不少.于是就需要创建一个空的对象,来将需要的属性名和属性值存储到对象中. 然而PHP中没有Javascript里面 var object

JavaScript 判断一个对象{}是否为空对象的简单方法

做项目时遇到一个问题,判断一个对象是否为空对象,发现这样判断可以,上代码: 1. 代码1: var a = {}; if(!a){ console.log(1);} else if(a == null) { console.log(2);} else { console.log(3);} 结果为:3 2. 代码2: var b = {}; if(b == {}){ console.log(4);} if(b == '{}') { console.log(5);} if(typeof(b) ==

关于axios返回空对象的问题解决

在本文开始之前,关于axios基本入门用法可以参考这篇文章,下面来看看本文的详细内容吧. 问题描述: 使用 axios 请求数据的时候,已经请求成功,返回的参数也正确.但打印出来的时候就变成了空对象. 分析原因: 返回的参数都是正确的,只是打印的时候有问题,所以是打印的代码有误 查了一下 axios 的官方文档,才知道 console.log 的变量与字符串之间不能用 '+' 连接,应该用 ',' 解决方案: 只需要将加号改为逗号就可以了 总结 以上就是这篇文章的全部内容了,希望本文的内容对大家

jquery isEmptyObject判断是否为空对象的函数

复制代码 代码如下: isEmptyObject: function( obj ) { for ( var name in obj ) { return false; } return true; } 分析: 1.什么是对象:其实,在javascript中对象是一组"键/值"的组合,说白了就是数据集,表示属性和方法 jQuery 判断一个对象是否为空是使用for name in obj 来遍历对象中的属性名.如果一个对象有属性名则运行return false来返回结果,退出循环;否则,

js中判断Object、Array、Function等引用类型对象是否相等

在迭代中,我们还要注意的是,对象或者数组中的元素可能是一个任意值--除了原始类型值.object.arrray外,这个值还可能是一个方法.一个DOM对象或者window对象,可能你已经注意到了,有部分引用类型是不能进行迭代的,需要分支判断,代码如下: 复制代码 代码如下: function compare(a,b){ var pt = /undefined|number|string|boolean/, fn = /^(function\s*)(\w*\b)/, cr = "constructo

在jQuery中 关于json空对象筛选替换

Requirement: 一个json object,并且可能包含一些空值或者空字符串,在页面显示的时候希望遇到空值显示"N/A",但是有一部分值是允许空值的.因此希望通过筛选将空值设为"N/A".例如希望学生的"age"和"score"如果为空显示"N/A",而"sex"或者"comment"为空则不做处理. 复制代码 代码如下: var student = {  

验证用户是否修改过页面的数据的实现方法

起因: 在实现程序的修改模块时,要在页面端检查用户是否修改过数据,以便提醒用户及时保存修改后的数据. 实现要求: 判断用户是否修改了输入的内容,要能判断input中的checkbox,text,radio等,不知道会多少个input,也不知道input的ID和name,要在客户端判断是否修改,不能产生提交.还要同时满足IE和firefox两种环境.也要支持master和content页的使用. 解决方案: 处理思路:在页面加载时记录所有的input的值或状态,如果要求在用户进行修改操作时立即调整

JavaScript设计模式---单例模式详解【四种基本形式】

本文实例讲述了JavaScript设计模式---单例模式.分享给大家供大家参考,具体如下: 单例模式也称为单体模式,其中: 1,单体模式用于创建命名空间,将系列关联的属性和方法组织成一个逻辑单元,减少全局变量. 逻辑单元中的代码通过单一的变量进行访问. 2,三个特点: ① 该类只有一个实例: ② 该类自行创建该实例,即在该类内部创建自身的实例对象: ③ 向整个系统公开这个实例接口 3,单体模式有四种基本形式: 第一种,最简单的单体,只被实例化一次    我简记为json对象 (1)基本结构 va