看Y.Array.test的时候发现这么一句
YArray.test = function(o) {
var r = 0;
if (Y.Lang.isObject(o)) {
if (Y.Lang.isArray(o)) {//判断是否是一个对象,是否是一个数组。
r = 1;
} else {
try {
// indexed, but no tagName (element) or alert (window),
// or functions without apply/call (Safari
// HTMLElementCollection bug).
if ((LENGTH in o) && !o.tagName && !o.alert && !o.apply) {//如果o里面有length,并且没有tagName属性(即不是Dom节点),不是window,或者是没有apply方法
r = 2;
}
} catch (e) {}
}
}
return r;
};
看注释貌似说得是克服Safari的bug。
于是搜到了这么一篇文章。
http://www.cnblogs.com/lecaf/archive/2011/04/02/2002985.html
和口碑的小豪也进行了讨论。
var divs = document.getElementsByTagName('div');
alert(typeof divs);
alert(divs.length);
这段代码在Safari下面可以看到,divs的type是function(很奇怪吧)
不过divs本身还是NodeList
那么既然divs本身是NodeList为什么还一定要判断他的apply方法是没有的。
初步感觉是为了防止普通含有length属性的function来冒充NodeList
分享到:
相关推荐
corcoef.test.R
binding_test.gobinding_test.gobinding_test.gobinding_test.gobinding_test.gobinding_test.gobinding_test.gobinding_test.gobinding_test.gobinding_test.gobinding_test.gobinding_test.gobinding_test....
《深入理解Boost.Test:资源与实战指南》 Boost.Test,作为Boost库的一部分,是一个功能强大的C++测试框架,它提供了一套完善的单元测试工具,帮助开发者编写和组织测试代码,确保程序的质量。Boost.Test库的设计...
cnews.test.txt
Axon Test(协议高效模拟工具)是一款非常全面的协议模拟助手。手上没有好用高效的协议模拟工具?主要是通过连接在计算机上的设备进行分析,然后显示出跟踪部分,并且每个信号都会用不同的颜色区分,让用户可以轻松的...
[Parasoft.C..Test.v6.581.Pro.源代码自动测试工具].Parasoft.CPPtest.v6.581.part1.rar
org.springframework.test-3.0.0.M4.jar
Addison.Wesley.Test-Driven.iOS.Development 简介: Table of Contents Chapter 1. About Software Testing and Unit Testing Chapter 2. Techniques for Test-Driven Development Chapter 3. How to Write a Unit ...
pytest-testmon, 使用testmon和 py.test 实现 python的新级别 这是一个 py.test 插头,它自动选择并执行受最近更改影响的测试。 这种动态语言如 python 是怎么可能的,它是多么可靠? 这里阅读:决定了测试结果。...
[Parasoft.C..Test.v6.581.Pro.源代码自动测试工具].Parasoft.CPPtest.v6.581.part5.rar
Parasoft.C++.Test.6.74破解版,绝对可用,配合修改rules的,就可以自定义规则
Bruce Eckel的SimpleTest框架包含了一些基本的测试类,如`Test`和`TestDriver`,它们帮助开发者组织和执行测试用例。`Test`类提供了断言(assert)方法,用于检查代码的输出是否符合预期,而`TestDriver`则用于收集...
ActivityTestRule 可以提供 Single Activity 做 Functional Test 的 @Rule 他會在 第一個 @Before、@Test 開始前就被啟動,在 @Test , 最後一個 @After 結束之後被終止。 這就解釋了為何只是宣告 ActivityTestRule ...
corcoef_test.R.r
2. `YArray.test`: 用于检测一个对象是否可以被视为数组。 3. `YArray.each`: 类似于`Array.prototype.forEach`,遍历数组并执行回调函数。 4. `YArray.hash`: 创建一个哈希对象,键值来自数组元素。 5. `YArray....
test.dmp test.dmp test.dmp test.dmp
Parasoft.C++.Test.Pro.v6.74+keygen.part1.rar 1/4
"《大话统计学》R 程序包-函数" 《大话统计学》R 程序包-函数是一本关于统计学和 R 语言的教材,涵盖了统计学的多个方面,包括描述统计、概率理论、随机变量、概率分布、抽样理论、区间估计、假设...* asbio::LSD.test
[Parasoft.C..Test.v6.581.Pro.源代码自动测试工具]
Parasoft.C++.Test.6.74 & keygen