JS高级:闭包的联系题目

			var name = 'The Window';
			var obj = {
				name: 'My Object',
				getNameFunc: function() {
					return function() {
						return this.name;
					};
				}
			};
			console.log(obj.getNameFunc()()); //The Window

相当于直接执行函数,则函数对象是window 

	var name2 = 'The Window2';
			var obj2 = {
				name2: 'My Object2',
				getNameFunc: function() {
					var that = this;
					return function() {
						return that.name2;
					};
				}
			};
			console.log(obj2.getNameFunc()()); //My Object2

这里的that是obj2

闭包输出的是什么

			function fun(n, o) {
				console.log(o);
				return {
					fun: function(m) {
						return fun(m, n);//n是闭包
					}
				}
			}
			var a = fun(0);//undefined 0 0 0
			a.fun(1);
			a.fun(2);
			a.fun(3);
			var b= fun(0).fun(1).fun(2).fun(3);//
			//undefined 0 1 2 3
			var c=fun(0).fun(1);//	//undefined 0  1 1 1
			c.fun(2);
			c.fun(3);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值