博客
关于我
关于获得当前的index的方法
阅读量:405 次
发布时间:2019-03-06

本文共 1003 字,大约阅读时间需要 3 分钟。

  每日一句English(start from today):

  In the previous section we just displayed a list of string entered statically in the Python code.(源于odoo的开发文档)。

     翻译:在上一节中我们只显示一个列表的字符串输入静态的Python代码。(百度翻译)

    在群里看见有人问了关于,获得当前对象的index值得时候,我做了demo ,获得了当前的index,方法多种,下面我就用我的方法来讲解我的代码:

  模拟数据:div里面5个button

1 
2
3
4
5
6
7
下面就是关于取这个index的for循环代码:
  对于这个闭包需要讲解一下:可能大多数同学在不理解onclick的时候,就会发现他们获得值就是最后一个值,会写下这么的一串代码
for(var i = 0;i < obj.length;i++) {	obj[i].onclick = function(){	  console.log(i+1);     }}

  如图错误:

  

  onclick这个点击函数是异步执行的,也就是说在点击获得值得时候,循环已经结束,到达最后一个值,这时候i的值为5.所以,每次点击的时候,都是获得一样的值。因此,如果想获得里面的i的值的时候就需要将i值包裹起来,就需要用这样的闭包形式,函数自调传入当前的i。每次循环一次,就会让函数自调一次,输出当前的i.索引值是从0开始的,这里加1是想让他输出button的序号。正确所示:

  

  顺便附上关于jq的写法:这里就不用考虑闭包了,都在jq的index这个方法包裹在里,有兴趣的同学可以去找这段jq的源码,来看看这个index的方法是怎么样封装的。

$("button").click(function(){     var index = $("button").index(this);     console.log(index); })

 

  具体关于闭包的详细解析:我会在在下篇 【闭包的理解】,详细讲解我对于闭包的理解。

  谢谢浏览!

转载地址:http://xsikz.baihongyu.com/

你可能感兴趣的文章
【CSS进阶】伪元素的妙用--单标签之美
查看>>
惊闻NBC在奥运后放弃使用Silverlight
查看>>
IE下尚未实现错误的原因
查看>>
创建自己的Docker基础镜像
查看>>
HTTP 协议图解
查看>>
Python 简明教程 --- 20,Python 类中的属性与方法
查看>>
Python 简明教程 --- 21,Python 继承与多态
查看>>
KNN 算法-理论篇-如何给电影进行分类
查看>>
Spring Cloud第九篇 | 分布式服务跟踪Sleuth
查看>>
CODING 敏捷实战系列课第三讲:可视化业务分析
查看>>
使用 CODING DevOps 全自动部署 Hexo 到 K8S 集群
查看>>
工作动态尽在掌握 - 使用 CODING 度量团队效能
查看>>
CODING DevOps 深度解析系列第二课报名倒计时!
查看>>
CODING DevOps 线下沙龙回顾二:SDK 测试最佳实践
查看>>
数据结构第八节(图(下))
查看>>
基础篇:异步编程不会?我教你啊!CompletableFuture
查看>>
基于Mustache实现sql拼接
查看>>
POJ 2260 Error Correction 模拟 贪心 简单题
查看>>
CSUOJ Water Drinking
查看>>
Spring MVC+javamail实现邮件发送
查看>>