<script>(function(){var bp = document.createElement('script');bp.src = '//push.zhanzhang.baidu.com/push.js';var s = document.getElementsByTagName("script")[0];s.parentNode.insertBefore(bp, s);})();</script> 跟 下面的写法有什么不同么? 为什么非得要用(function(){ ... })() 这么奇怪的写法?这样写有什么好处?<script> var bp = document.createElement('script'); bp.src = '//push.zhanzhang.baidu.com/push.js';var s = document.getElementsByTagName("script")[0];s.parentNode.insertBefore(bp, s);</script>
1 回答
回首忆惘然
TA贡献1847条经验 获得超11个赞
1 分析: 函数为何要有名字? 是为了方便下次使用. 匿名函数, 即没有名字.
2 用途: 通常不希望再次使用(即只使用一次的)的函数可以定义为匿名函数.
3 使用示例:
12345 | // 定义并使用一个匿名函数来打印从1到10的整数 ( function (n) { for ( var i = 1; i <= n; i++) console.log(i); })(10); |
4 扩展: 当然, 如果还是想再次使用匿名函数的话, 也有方法. 即把匿名函数赋给一个变量(funtion类型的变量), 想再次使用时, 使用该变量来调用即可.示例如下:
12345678 | // 定义一个匿名函数并将它赋给变量printN var printN = function (n) { for ( var i = 1; i <= n; i++) console.log(i); }; // 通过变量printN来再次使用该匿名函数 printN(10); |
5 运行效果果图如下:
图1
图2
- 1 回答
- 0 关注
- 1123 浏览
添加回答
举报
0/150
提交
取消