`

jQery中类数组判断的实现原理及代码实现

阅读更多
//第二个类数组对象
//就像其文字所表达的意思,就是像数组,那就得想想数组有什么特性了

//此方法不可运行,需type,each方法配合
//附件里有可运行的代码
function isArrayLike (obj){
	var 
		length=obj.length;
		
	//判断为空
	if(obj==null){
		return false;
	}
	//判断,第一,如果对象中有length===0
	//这种如arguments
	//arguements举例在方法结束地方
				//如果对象中有length>0 and  (length-1 in) obj  形如{0:"1",1:"2",length:2}
				//[div#div1, div#div2, div#div3, item: function]
				//0: div#div1
				//1: div#div1
				//2: div#div1
				//length:3
		 //第二,我们判断的是对象,若是函数直接过,若是window也是直接过
		 //第三种就节点(node)  obj.nodeType===1 && length  值大于等于1//对于这一种既是元素节点,并且属性length大于0
		//第三没有找到对应的类型
		 //第四种数组类型直接通过
	if(isWindow(obj) ||typeof(obj)==="function"){
		return false;
	}
	
	
	//return type(obj)==="array" ||length===0 || (length>0 &&(length-1) in obj);
	//(obj.node===1 &&length)返回值是length,不是boolean,单独作为一种情况
	return type(obj)==="array" ||length===0 || (length>0 &&(length-1) in obj);
}

//这种如arguments
console.info(function(){
	console.info("str "+arguments);//str [object Arguments]
	console.info("str1 "+arguments.length);// str1 0
}());
console.info(function(){
	console.info("str "+arguments);//str  0:"aa" 1:"bb"
	console.info("str1 "+arguments.length);// str1 0
}("aa","bb"));

//到此结束
 
分享到:
评论

相关推荐

    jquery删除数组中重复元素

    这是一个jQuery提供的方法,它的工作原理是检查指定的值是否存在于数组中,并返回该值在数组中的索引。如果找不到该值,则返回-1。基本语法如下: ```javascript $.inArray(value, array) ``` 例如,如果我们有一...

    超实用的jQuery代码段

    超实用的jQuery代码段精选近350个jQuery代码段,涵盖页面开发中绝大多数要点、技巧与方法,堪称史上最实用的jQuery代码参考书,可以视为网页设计与网站建设人员的好帮手。《超实用的jQuery代码段》的代码跨平台、跨...

    jQuery Utilities 分类下的函数(或属性)的实现方式分析

    除此之外,jQuery还提供了许多其他实用工具,如`$.trim()`用于去除字符串两端的空白,`$.isPlainObject()`判断是否为纯粹的对象,`$.inArray()`检查元素是否在数组中,以及`$.grep()`过滤数组等。这些函数的实现都...

    HTML jQuery点赞功能,可以实现分别给多个评论点赞,动画样式同CSDN

    标签中提到的“javascript”表明代码可能会使用原生JavaScript进行一些更底层的操作,如事件监听、DOM操作等,以增强性能或实现某些jQuery无法直接完成的功能。 综上所述,实现这个点赞功能需要理解HTML的基本结构...

    jQuery贪吃蛇网页版游戏代码.zip

    【jQuery贪吃蛇网页版游戏代码】是一款基于流行的JavaScript库jQuery实现的在线贪吃蛇游戏。这款游戏将经典的街机游戏贪吃蛇移植到了网页环境中,为用户提供了在浏览器上玩耍的便捷体验。jQuery库以其简洁的API和...

    jQuery 2048数字游戏代码.zip

    《jQuery实现的2048数字游戏源代码解析》 在编程世界中,游戏开发是一项充满挑战和趣味的任务。今天我们将深入探讨一个基于jQuery实现的2048数字游戏源代码,这是一款深受程序员和游戏爱好者喜爱的轻量级游戏。通过...

    jQuery简单实现遍历数组的方法

    这篇文章将详细讲解如何使用jQuery的`$.each()`方法来遍历数组,并探讨其工作原理。 首先,`$.each()`是jQuery库提供的一个迭代器函数,它可以用于遍历对象(包括数组)并执行指定的函数。在处理数组时,`$.each()`...

    jQuery图片去重网页小游戏代码.zip

    以上就是使用jQuery实现网页图片去重和相关小游戏的基本原理和代码示例。通过这个实践,我们可以看到jQuery的强大之处在于它能够简化复杂的DOM操作,使得实现这样的功能变得更加简单。如果你对代码有进一步的需求,...

    半圆按钮jQuery幻灯片代码

    在这个幻灯片代码中,半圆按钮可能被用来触发幻灯片的切换,而jQuery会根据用户的点击事件来决定下一个内容何时出现。 其次,循环显示是通过某种计数机制和条件判断实现的。开发者可能会用到数组存储幻灯片内容,...

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

    在JavaScript和jQuery中,对象是一种复杂的数据结构,用于存储键值对,这些键可以是字符串,而对应的值可以是各种数据类型,包括其他对象、数组、字符串、数字、布尔值等。`isEmptyObject`是jQuery提供的一个非常...

    jquery图片浏览代码.zip

    6. 兼容性和优化:考虑到不同浏览器和设备的差异,代码可能会包含一些兼容性处理,如使用jQuery的`$.browser`来判断浏览器类型,以及使用懒加载策略减少初次加载的图片数量。 7. 用户交互:可能还有缩放、旋转等...

    利用Jquery队列实现根据输入数量显示的动画

    JQuery队列是一种特殊的数组,用于管理页面上发生的各种动画事件。在JQuery中,所有的动画方法如.show()、.hide()、.fadeIn()、.fadeOut()以及许多自定义动画方法都可以被添加到队列中进行排队执行。本文介绍的利用...

    基于jQuery的上下切换焦点图demo代码

    4. **ECMAScript**:虽然主要使用jQuery库,但可能还会涉及到一些原生JavaScript,如变量声明、数组操作、条件判断等。ECMAScript是JavaScript的基础,理解其语法和特性对于编写高效代码至关重要。 5. **源码分析**...

    jQuery网页注册表单验证代码特效.zip

    验证过程中,通常会使用jQuery的`$.trim()`去除输入的前后空白,`$.isNumeric()`检查是否为数字,`$.inArray()`判断字符串是否在数组中等函数。此外,还可以结合AJAX异步请求,实时验证用户输入,无需等到表单提交时...

    jQuery判断数组是否包含了指定的元素

    要判断数组中是否包含某个元素,从原理来来说,就是遍历整个数组,然后判断是否相等, 代码如下: var arr = [ “xml”, “html”, “css”, “js” ]; $.inArray(“js”, arr); //返回 3, 如果不包含在数组中,则返回...

    jQuery数字随机滚动抽奖特效代码

    "jQuery数字随机滚动抽奖特效代码"是一种常见的实现方式,它利用JavaScript库jQuery的强大功能,创建出动态、吸引人的数字滚动效果,最终停在随机选择的一个数字上,作为中奖号码。 首先,我们来看`jQuery`。jQuery...

    jQuery 判断是否包含在数组中Array[]的方法

    在本文中,我们将探讨jQuery技术中一个非常实用的功能,即判断某个元素的属性是否存在于一个由字符串或数组形式表示的列表中。这一功能在前端开发过程中经常会用到,特别是在需要根据特定条件来判断页面上的元素是否...

    jQuery 1.9.1源码分析系列(十四)之常用jQuery工具

    在详细分析jQuery 1.9.1源码系列的文章中,我们集中于探讨了jQuery库中常用工具函数的实现原理及其应用。这些工具函数广泛用于动画处理、事件处理、数据操作和性能优化等场景。本篇文章详细解释了多个核心工具函数的...

    jQuery泡泡龙小游戏代码.zip

    本项目“jQuery泡泡龙小游戏代码”利用jQuery库构建了一个有趣的泡泡龙游戏,下面将详细解析这个游戏的实现原理和关键知识点。 1. **页面结构与布局** 游戏界面通常由HTML元素构成,包括游戏背景、泡泡、炮塔等。...

Global site tag (gtag.js) - Google Analytics