JavaScript中获取元素索引的函数


Posted in Javascript onSeptember 10, 2010

 这是我在写结构/表现/行为完全分离的选项卡(jQ版和原生JS版)一文时发现的问题. 今天一个朋友也问到我这个问题, 这个函数的确很实用. 和大家分享一下我的实现方法.
代码:

function index(current, obj){ 
for (var i = 0; i < obj.length; i++) { 
if (obj[i] == current) { 
return i; 
} 
} 
}

原理:
通过一个for循环遍历找出当前集合中与当前元素相等的元素,那么该元素的下标值即是当前元素在元素集合中的索引值.

优化下:

 
function index(current, obj){ 
for (var i = 0, length = obj.length; i<length; i++) { 
if (obj[i] == current) { 
return i; 
} 
} 
}
Javascript 相关文章推荐
jQuery源码分析-02正则表达式 RegExp 常用正则表达式
Nov 14 Javascript
jQuery制作的别致导航有阴影背景高亮模式窗口
Apr 15 Javascript
浅析javascript中function 的 length 属性
May 27 Javascript
jQuery手动点击实现图片轮播特效
Apr 20 Javascript
javascript实现九宫格相加数值相等
May 28 Javascript
AngularJS基础 ng-href 指令用法
Aug 01 Javascript
微信小程序 WXML、WXSS 和JS介绍及详解
Oct 08 Javascript
javascript 玩转Date对象(实例讲解)
Jul 11 Javascript
微信小程序之GET请求的实例详解
Sep 29 Javascript
jQuery实现王者荣耀手风琴效果
Jan 17 jQuery
vue项目接口域名动态获取操作
Aug 13 Javascript
详解如何在vue+element-ui的项目中封装dialog组件
Dec 11 Vue.js
document.getElementById的简写方式(获取id对象的简略写法)
Sep 10 #Javascript
一些常用且实用的原生JavaScript函数
Sep 08 #Javascript
js location.replace与location.reload的区别
Sep 08 #Javascript
js中匿名函数的N种写法
Sep 08 #Javascript
JavaScript与Div对层定位和移动获得坐标的实现代码
Sep 08 #Javascript
javascript循环变量注册dom事件 之强大的闭包
Sep 08 #Javascript
Javascript的一种模块模式
Sep 08 #Javascript
You might like
详解php魔术方法(Magic methods)的使用方法
2016/02/14 PHP
Yii2实现跨mysql数据库关联查询排序功能代码
2017/02/10 PHP
PHP实现超简单的SSL加密解密、验证及签名的方法示例
2017/08/28 PHP
jquery的flexigrid无法显示数据提示获取到数据
2013/07/19 Javascript
一个JS的日期格式化算法示例
2013/07/31 Javascript
Javascript字符串浏览器兼容问题分析
2014/12/01 Javascript
如何屏蔽防止别的网站嵌入框架代码
2015/08/24 Javascript
全面了解构造函数继承关键apply call
2016/07/26 Javascript
request请求获取参数的实现方法(post和get两种方式)
2016/09/27 Javascript
详解angular ui-grid之过滤器设置
2017/06/07 Javascript
weex slider实现滑动底部导航功能
2017/08/28 Javascript
jQuery 利用ztree实现树形表格的实例代码
2017/09/27 jQuery
JS实现的集合去重,交集,并集,差集功能示例
2018/03/13 Javascript
移动端H5页面返回并刷新页面(BFcache)的方法
2018/11/06 Javascript
JavaScript前端页面搜索功能案例【基于jQuery】
2019/07/10 jQuery
vue2 拖动排序 vuedraggable组件的实现
2019/08/08 Javascript
vue.js使用v-model实现父子组件间的双向通信示例
2020/02/05 Javascript
JavaScript定时器使用方法详解
2020/03/26 Javascript
Openlayers绘制聚合标注
2020/09/28 Javascript
vue created钩子函数与mounted钩子函数的用法区别
2020/11/05 Javascript
[56:56]VG vs LGD 2019国际邀请赛淘汰赛 胜者组 BO3 第一场 8.22
2019/09/05 DOTA
python 计算文件的md5值实例
2017/01/13 Python
Python之Scrapy爬虫框架安装及简单使用详解
2017/12/22 Python
python中requests和https使用简单示例
2018/01/18 Python
IntelliJ IDEA安装运行python插件方法
2018/12/10 Python
tensorflow转换ckpt为savermodel模型的实现
2020/05/25 Python
Python如何利用Har文件进行遍历指定字典替换提交的数据详解
2020/11/05 Python
aec加密 php_php aes加密解密类(兼容php5、php7)
2021/03/14 PHP
【HTML5】3D模型--百行代码实现旋转立体魔方实例
2016/12/16 HTML / CSS
简述synchronized和java.util.concurrent.locks.Lock的异同
2014/12/08 面试题
简述进程的启动、终止的方式以及如何进行进程的查看
2014/02/20 面试题
小学语文教学反思
2014/02/10 职场文书
golang 比较浮点数的大小方式
2021/05/02 Golang
详解NodeJS模块化
2021/06/15 NodeJs
详细了解MVC+proxy
2021/07/09 Java/Android
一条 SQL 语句执行过程
2022/03/17 MySQL