jquery - javascript中匿名函数前加下划线的问题
大家讲道理
大家讲道理 2017-04-11 09:16:14
[JavaScript讨论组]

阅读别人的javascript代码时,发现匿名函数前面加下划线,如下面代码中 _(function(info){...}).bind(this)

类似下面这样:

indexAPI.getVersion(_(function(info) {
    this.sc_version = info.version;
    this.release_date = info.date.substr(0,4) + "-" +info.date.substr(4,2) + "-" + info.date.substr(6,2);
    // 创建组件
    this.createComps();
    // 添加对话框渲染
    this.render();
    
}).bind(this));

不理解有什么用处,是jquery的规定吗?

我对javascript和jquery都不是很熟,求解。

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(6)
伊谢尔伦

_是其定义的一个函数的简写名字,如同jquery中使用$表示jquery函数对象一样
例如:

function myGlobalFun(fun){
    fun();
}
var _= myGlobalFun;
高洛峰

按照语法规则,你的页面里面有一个叫_的变量,是一个函数 ,_()是调用这个函数

巴扎黑

这个不是 js 的规定,也不是 jq 的规定,你确定那个环境中_不是一个函数么?

ringa_lee

下划线 _ 是一个合法的标识符,所以这里可能是函数 _(),其参数要求是一个函数。

怪我咯

下划线是一个合法标识符,跟fooname没有本质区别。

你代码中的下划线应该是个函数,你要找到它的定义才能知道具体含义。

黄舟

个可能是用的lodash或者underscore库里面的函数,把当前的上下文绑定到函数中,也就是在特定的作用域中调用函数,类似于call和apply的语法糖
http://lodashjs.com/docs/#_bindfunc-this...

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号