function bind(fn, context){return function(){     return fn.apply(context, arguments);
};}这是JavaScript高级程序设计高级技巧中bind方法 对这个方法我有两点疑问:1、argument是里面的方法的参数集合,但是又传不到参数给里面的方法,那这个argument有什么意义?2、调用里面的fn时,为什么要加return,不加也可以调用啊,加了有什么意义?
                    
                    
                1 回答
 
                    
                    
                            凤凰求蛊
                            
                                
                            
                        
                        
                                                
                    TA贡献1825条经验 获得超4个赞
举个简单例子
var a = 0;var obj = {a:2};function add(x,y){ return this.a + x + y;}在非严格模式下
add(3,4) //7bind(add,obj)(3,4) //9
- arguments是传到返回的函数里面的 也就是上文的 类似- [3,4]的东西(array like)
- return是返回了一个值
 不- return
- 如果函数是只有副作用的 比如触发一个动作,改某个变量的值的那是没啥 
- 如果没副作用函数 比如我上面这个 - add那你怎么写能到达我现在要的效果...
添加回答
举报
0/150
	提交
		取消
	