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 相关文章推荐
翻译整理的jQuery使用查询手册
Mar 07 Javascript
web前端开发也需要日志
Dec 09 Javascript
通过下拉框的值来确定输入框是否可以为空的代码
Oct 18 Javascript
jQuery制作简单柱状图实例
Jan 28 Javascript
javascript实现延时显示提示框特效代码
Apr 27 Javascript
深入探究angular2 UI组件之primeNG用法
Jul 26 Javascript
关于JavaScript的单双引号嵌套问题
Aug 20 Javascript
原生JS实现ajax与ajax的跨域请求实例
Dec 01 Javascript
vue项目打包部署_nginx代理访问方法详解
Sep 20 Javascript
js设计模式之单例模式原理与用法详解
Aug 15 Javascript
一文读懂vue动态属性数据绑定(v-bind指令)
Jul 20 Javascript
探索node之事件循环的实现
Oct 30 Javascript
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
php实现倒计时效果
2015/12/19 PHP
Prototype最新版(1.5 rc2)使用指南(1)
2007/01/10 Javascript
创建一个复制UBB软件信息的链接或按钮的js代码
2008/01/06 Javascript
jquery ui dialog里调用datepicker的问题
2009/08/06 Javascript
javascript hashtable实现代码
2009/10/13 Javascript
JavaScript 页面坐标相关知识整理
2010/01/09 Javascript
把jquery 的dialog和ztree结合实现步骤
2013/08/02 Javascript
jquery ajax对特殊字符进行转义防止js注入使用示例
2013/11/21 Javascript
Javascript 按位与赋值运算符 (&amp;=)使用介绍
2014/02/04 Javascript
20个实用的JavaScript技巧分享
2014/11/28 Javascript
jQuery预加载图片常用方法
2015/06/15 Javascript
JavaScript数组各种常见用法实例分析
2015/08/04 Javascript
jquery实现鼠标滑过显示二级下拉菜单效果
2015/08/24 Javascript
原生JS实现图片轮播切换效果
2016/12/15 Javascript
在使用JSON格式处理数据时应该注意的问题小结
2017/05/20 Javascript
简单谈谈CommonsChunkPlugin抽取公共模块
2017/12/31 Javascript
微信小程序实现topBar底部选择栏效果
2018/07/20 Javascript
vue实现数字动态翻牌的效果(开箱即用)
2019/12/08 Javascript
js实现登录拖拽窗口
2020/02/10 Javascript
Python实现备份文件实例
2014/09/16 Python
Python使用scrapy采集时伪装成HTTP/1.1的方法
2015/04/08 Python
Python学习小技巧之列表项的推导式与过滤操作
2017/05/20 Python
Win10下python 2.7.13 安装配置方法图文教程
2018/09/18 Python
Python这样操作能存储100多万行的xlsx文件
2019/04/16 Python
Python玩转PDF的各种骚操作
2019/05/06 Python
解决python文件双击运行秒退的问题
2019/06/24 Python
Python Django框架防御CSRF攻击的方法分析
2019/10/18 Python
Python @property装饰器原理解析
2020/01/22 Python
python字符串下标与切片及使用方法
2020/02/13 Python
使用Python制作一个数据预处理小工具(多种操作一键完成)
2021/02/07 Python
猫途鹰英国网站:TripAdvisor英国(旅游社区和旅游评论)
2016/08/30 全球购物
2015年党员个人剖析材料
2014/12/18 职场文书
2015年幼儿园师德师风建设工作总结
2015/10/23 职场文书
安全教育培训心得体会
2016/01/15 职场文书
WebRTC记录音视频流(web技术分享)
2022/02/24 Javascript
bose降噪耳机音能消除人声吗
2022/04/19 数码科技