jQuery1.6 使用方法二


Posted in Javascript onNovember 23, 2011

makeArray: function( array, results ) {//转换一个类似数组的对象成为真正的JavaScript数组。 results为可选参数
var ret = results || [];//results作为存放arry的数组,如果没有定义就设置为空数组

 if ( array != null ) {{//window,String,Function,Array类型的.length不为undefined;(document.getElementById IE 为undefined,jQuery.type(document.getElementById )为object,所以类似这样的方法在IE下比较特别,可以jquery里的type方法)

var type = jQuery.type( array );
if ( array.length == null || type === "string" || type === "function" || type === "regexp" || jQuery.isWindow( array ) )
push.call( ret, array );// 传入的对象不是数组,就push加入ret数组中
} else {
jQuery.merge( ret, array );//传入对象是数组或者类似数组,直接合并到ret数组中
}
}
return ret;
},
inArray: function( elem, array ) {//搜索数组中指定值并返回它的索引(如果没有找到则返回-1)。
if ( indexOf ) {//ECMA - 262标准的浏览器都支持,IE系列要到IE9才支持Array.prototype.indexOf,
return indexOf.call( array, elem );
}
for ( var i = 0, length = array.length; i < length; i++ ) {//IE9以下版本,通过循环数组来判断
if ( array[ i ] === elem ) {
return i;
}
}
return -1;
},
merge: function( first, second ) {//合并数组
var i = first.length,
j = 0;
if ( typeof second.length === "number" ) {//简单检测对象是否有length属性,有则循环添加到操作数组后面
for ( var l = second.length; j < l; j++ ) {//String,Array类型
first[ i++ ] = second[ j ];
}
} else {
while ( second[j] !== undefined ) {
first[ i++ ] = second[ j++ ];
}
}
first.length = i;
return first;
},
grep: function( elems, callback, inv ) {//查找满足过滤功能数组元素。原始数组不受影响。
var ret = [], retVal;
inv = !!inv;//转化成布尔值类型,如果没有明确指定inv或者指定为false,inv=false;
for ( var i = 0, length = elems.length; i < length; i++ ) {
retVal = !!callback( elems[ i ], i );//转化成布尔值类型
if ( inv !== retVal ) {//callback返回的结果如果与inv相反,即保留
ret.push( elems[ i ] );
}
}
return ret;
},

Javascript 相关文章推荐
多种方式实现JS调用后台方法进行数据交互
Aug 20 Javascript
JavaScript简单实现网页回到顶部功能
Nov 12 Javascript
js实现省市联动效果的简单实例
Feb 10 Javascript
PHP+jQuery+Ajax+Mysql如何实现发表心情功能
Aug 06 Javascript
Jquery轮播效果实现过程解析
Mar 30 Javascript
jquery实现一个简单的表单验证实例
Mar 30 Javascript
JavaScript实现打开链接页面的方式汇总
Jun 02 Javascript
Angular中ng-bind和ng-model的区别实例详解
Apr 10 Javascript
JavaScript递归算法生成树形菜单
Aug 15 Javascript
JS中的事件委托实例浅析
Mar 22 Javascript
原生JS实现随机点名项目的实例代码
Apr 30 Javascript
jQuery实现图片下载代码
Jul 18 jQuery
jQuery1.6 使用方法一
Nov 23 #Javascript
JS 表单验证大全
Nov 23 #Javascript
JavaScript中的16进制字符(改进)
Nov 21 #Javascript
日期处理的js库(迷你版)--自建js库总结
Nov 21 #Javascript
js 完美图片新闻轮转效果,腾讯大粤网首页图片轮转改造而来
Nov 21 #Javascript
页面调用单个swf文件,嵌套出多个方法。
Nov 21 #Javascript
javascript中xml操作实现代码
Nov 21 #Javascript
You might like
极典R601SW收音机
2021/03/02 无线电
php长字符串定义方法
2012/07/12 PHP
PHP的基本常识小结
2013/07/05 PHP
php操作xml
2013/10/27 PHP
PHP制作图形验证码代码分享
2014/10/23 PHP
php读取csc文件并输出
2015/05/21 PHP
PHP统计当前在线用户数实例讲解
2015/10/21 PHP
Extjs学习过程中新手容易碰到的低级错误积累
2010/02/11 Javascript
jquery可见性过滤选择器使用示例
2013/06/24 Javascript
浅谈JavaScript异常处理语句
2015/06/26 Javascript
Node.js学习入门
2017/01/03 Javascript
jQuery 表单序列化实例代码
2017/06/11 jQuery
jQuery实现锚点向下平滑滚动特效示例
2017/08/29 jQuery
Vue2 监听属性改变watch的实例代码
2018/08/27 Javascript
基于Vue实现可以拖拽的树形表格实例详解
2018/10/18 Javascript
详解Vue SSR( Vue2 + Koa2 + Webpack4)配置指南
2018/11/13 Javascript
Node.js JSON模块用法实例分析
2019/01/04 Javascript
javascript定时器的简单应用示例【控制方块移动】
2019/06/17 Javascript
微信小程序之几种常见的弹框提示信息实现详解
2019/07/11 Javascript
JS删除数组指定值常用方法详解
2020/06/04 Javascript
基于JavaScript的数据结构队列动画实现示例解析
2020/08/06 Javascript
python 3.5下xadmin的使用及修复源码bug
2017/05/10 Python
libreoffice python 操作word及excel文档的方法
2019/07/04 Python
Python计算不规则图形面积算法实现解析
2019/11/22 Python
用python求一重积分和二重积分的例子
2019/12/06 Python
Tensorflow设置显存自适应,显存比例的操作
2020/02/03 Python
Django 如何使用日期时间选择器规范用户的时间输入示例代码详解
2020/05/22 Python
浅谈keras中的keras.utils.to_categorical用法
2020/07/02 Python
Python接口自动化测试的实现
2020/08/28 Python
Python实现像awk一样分割字符串
2020/09/15 Python
TCP协议通讯的过程和步骤是什么
2015/10/18 面试题
社区护士演讲稿
2014/08/27 职场文书
镇班子对照检查材料思想汇报
2014/09/24 职场文书
家长给老师的感谢信
2015/01/20 职场文书
大学体育课感想
2015/08/10 职场文书
2016年感恩节活动总结大全
2016/04/01 职场文书