js中的(function(){...})()
js中的(function(){...})()
作为一个前端小白,今天遇到了一个恶心我一天的问题,先看我的代码。
for(var i=0;i<addrs.length;i++){var info = "<div>订单数量:"+addrs[i][1]+"</div>";myGeo.getPoint(addrs[i][0], function(point){marker = new BMap.Marker(point);map.addOverlay(marker);console.log(info);addClickHandler(info,marker,point);}, "上海市");
}
我的想法是程序从上往下执行 每次==addClickHandler()里的info值都会不一样,但是console.log(info)==每次的打印结果都是一样的,我一个人默默捣鼓(debug)了半天,发现代码的执行顺序跟我预想的不一样。我百度了半天找到了一种解决办法,把循环体里的代码用(function(){...})() 包裹,代码如下,
for(var i=0;i<addrs.length;i++){(function(){var info = "<div>订单数量:"+addrs[i][1]+"</div>";myGeo.getPoint(addrs[i][0], function(point){marker = new BMap.Marker(point);map.addOverlay(marker);console.log(info);addClickHandler(info,marker,point);}, "上海市");})()
}
这样每次循环我的输出结果都是不一样的。虽然解决了问题 但是 至于为什么我还是不明白。希望知道的大佬能在我的评论区留言。
转载于:https://www.cnblogs.com/zcj430430/p/10622206.html
js中的(function(){...})()相关推荐
- 2017.4.07 js 中的function 实现的方式
函数分为FD (函数定义),FE(函数表达式) ,函数构造器得到的函数 (1) FD 的栗子: function getTaste(){ ....... } 解析器遇到上面的function关键字, ...
- js中,(function(){})()的用法解析
(function($){...})(jQuery) 含义 经常用,今天总结一下,下文摘自某网友的总结: (function($){...})(jQuery)实际上是匿名函数,不懂得朋友可以继续往下 ...
- JS中[感叹号]function(){}()的理解
这种写法,是一种`立即执行函数`的写法,即IIFE等设计模式.这种函数在函数定义的地方就直接执行了. 理解IIFE设计模式的关键是要认识到,在ES6之前,JavaScript仅具有函数作用域(因此缺少 ...
- java js中 function函数报错_浅析JS中对函数function的理解(基础篇)
正文:我们知道,在js中,函数实际上是一个对象,每个函数都是Function类型的实例,并且都与其他引用类型一样具有属性和方法.因此,函数名实际上是指向函数对象的指针,不与某个函数绑定.在常见的两种定 ...
- Javascript 中的 Function对象
在 js 中 函数 Function(大写) 就是一个对象.在 javascript 中没有函数 reload (重载)的概念. 我们看下面这个,结果应该是什么呢? <html><h ...
- js base64 php,php中的base64decode 与js中的互相转换
php中的base64decode 与js中的相互转换 function utf16to8(str) { var out, i, len, c; out = ""; len = s ...
- 【在JS中如何获取图片路径以及更改图片】
//页面级内容<button id="div1">时间</button> img id="myimage" src="./im ...
- js中(function(){}()),(function(){})(),$(function(){});之间的区别
1. (function(){}())与(function(){})() 这两种写法,都是一种立即执行函数的写法,即IIFE (Immediately Invoked Function Express ...
- js中function参数默认值
--在dreamweaver做网站时,函数定义是在一个*.js文件中,其中定义了一个func,有四个参数,function func(string1,url,flag,icon),然后在另一个asp中 ...
最新文章
- 区块链相关论文研读6: FASTKITTEN,关于比特币的实用智能合约
- 在Git存储库中查找并恢复已删除的文件
- mysql基础(九) 索引和视图
- 内存溢出和内存泄漏的区别、产生原因以及解决方案 转
- Linux 2.4调度系统分析--转
- Surface pro镜像恢复详细图文步骤 2021最新版
- 上线4年从畅销Top 200到Top 20,这款刀塔传奇like卡牌正在美国市场逆流而上
- 微软已暂时停用你的帐户_Apple ID 被停用如何解决?
- FreeMarker的优点和缺点
- 如何下载coursera视频
- Internet 的50年口述历史七.摩登时代上
- mysql 没有三级模式两级映像_数据库三级模式/两级映像
- imdisk虚拟光驱装linux,怎么样通过虚拟光驱装Ubuntu系统?
- c语言迷宫算法入门,基于C语言实现的迷宫算法示例
- Luogu_P4556 雨天的尾巴【题解】树上差分 线段树合并
- 工具分享:pycharm-2019.1_windows正版最新(附下载链接)
- 中西宗教精神之比较研究
- 2019年 网络空间安全国赛真题 赛题分析
- 托福百日冲刺(五一记忆)(1)
- WIN7下破解锐捷无线共享上网(谨以此文献给浙理各位被锐捷搞疯掉的同学)