js函数定义问题

xiaoaizi1234 2017-02-24 02:21:15
var do = function name_do(msg) {
alert(msg);
};
name_do("Hello");
这样调用怎么出现问题啊!
do("Hello");
就没问题。

第一次看这样定义函数的,是在jquery.infinitescroll.js看到的。不知道这样定义有什么用。
...全文
85 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
天际的海浪 2017-02-24
  • 打赏
  • 举报
回复
作为函数表达式(匿名函数)的函数名相当于函数内的局部变量,只能在函数作用域内访问。主要用来方便进行函数递归调用。
___紫菜 2017-02-24
  • 打赏
  • 举报
回复
引用 2 楼 csiu1234 的回复:
哦!想起来了,递归里好像有这种写法,就不知道还有什么用途。谢谢!
函数表达式适合用来定义只会用到一次的函数 也可以不需要名称可以这样 var do = function (msg) { alert(msg); };
xiaoaizi1234 2017-02-24
  • 打赏
  • 举报
回复
哦!想起来了,递归里好像有这种写法,就不知道还有什么用途。谢谢!
functionsub 2017-02-24
  • 打赏
  • 举报
回复
var do = function name_do(msg) {
alert(msg);
};
这样的写法,name_do只在本身的作用域里生效。 外部访问要通过do来访问。

87,993

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧