Javascript中如何判断对象是否为空
发现了一个巧妙的实现: 需要检查一个对象(Object)是否为空,即不包含任何元素。Javascript 中的对象就是一个字典,其中包含了一系列的`键值对(Key Value Pair)。检查一个对象是否为空,等价于检查对象中有没有键值对。写成代码,形如:
if (isEmptyObject(obj)) { // obj is empty} else { // not empty}
至于 isEmptyObject 的实现,jQuery 中有一个很有想法的方式,请看代码:
function isEmptyObject(obj) { for (var key in obj) { return false; } return true;}
尽管 Javascript 没有原生提供 isEmpty() 方法,但它提供了迭代器,可以用来遍历所有的键值对。于是 jQuery 所做的事情,就是尝试遍历,如果有任何一个键值对,即说明对象非空,直接返回 false。从效率上来说,由于只读取了一个元素,顶多加上一些跳出循环的开销,实际性能不会比原生方法差太多。这是一个非常巧妙的实现。
注:有网友指出 ES5 中提供了 wnPropertyNames 方法来获取所有的元素键。它的返回值是一个数组,当数组长度为零时,说明对象为空。
-
平面广告中使用图形创意的作用
提起平面广告相信许多小伙伴们都不会感到陌生吧,在于一些产品来说,打广告太常见了,可以起到很好的宣传作用,以下是小编给大家带来的平面广告中使用图形创意的作用,希望对大家有帮助。视觉设计又可以称之为图形设计,是VisualCommunicationDesign的中文翻译。有时在西...
-
移动硬盘突然识别不了
导语:移动硬盘顾名思义是以硬盘为存储介质,计算机之间交换大容量数据,强调便携性的存储产品,系统不能识别移动硬盘怎么办呢?在正常情况下,移动硬盘同主机相连后系统即可将它认成“移动存储设备”,并自动在“我的电脑”中添加盘符。如果系统将移动硬盘认成“未知的USB...
-
Excel中批量删除超链接的方法
Excel中某列单元格均含有超链接,数量巨大,因此只能考虑采用批量删除法,下面跟小编学习一下批量删除超链接的方法。一、宏代码去除法打开该Excel文件,切换到视图选项卡,点击宏→录制宏,出现录制新宏窗口,在宏名定义一个名称为:RemoveHyperlinks(图2),点击确定退出;再...
-
SEO常见术语
链接场(LinkFarm)在SEO术语中,链接场是指一个充满链接的页面,这些链接其实没有实际作用,它们只作为链接存在,而没有任何实际的上下文。那些采用运用黑帽SEO方法的人利用链接场,在一个页面中增加大量链接,希望能通过这种方式使Google误认为这个页面很有链接的价值。交...