JavaScript:说看懂了就懂了闭包,看懂了,还是不懂...

<script>
var name = "The Window";
var setter;
var object = {
  name : "My Object",
  getNameFunc : function(){
    return function(){
      return this.name;
    };

  }

};
alert(object.getNameFunc()());

function t(){
setter=function (){name = "My Object";};
function b(){alert(this.name);}
return b;
}
var object1=t();
object1();
setter();
object1();

function out()
{
name = "My Object";
function inner()
{
alert(this.name);
}
return inner;
}

var result=out();
result();
</script>

时间: 2024-10-10 11:00:06

JavaScript:说看懂了就懂了闭包,看懂了,还是不懂...的相关文章

看了汤姆大叔的“你真懂JavaScript吗?”的一些感慨

看了汤姆大叔的“你真懂JavaScript吗?”,里面有5道题目,我都一一作了,然后在chrome的控制台里面运行了一遍,虽然只错了一道,但还是细细读了下答案,在此总结一下,看看是否对大家对这些JavaScript底层的原理都懂了. 题目一(所有全局变量都是window的属性.变量声明提前.变量赋值不会提前) if (!("a" in window)) { var a = 1; } alert(a); 因为在JavaScript在变量声明提前的特性,所以事实上上述代码相当于下面所示:

零基础搞懂智能机之手机参数怎么看

欢迎转载opendevkit文章, 文章原始地址: http://www.opendevkit.com/?e=53 手机参数, 基本能反映一款机器到底好还是不好.本篇带领大家阅读Samsung Galaxy S5的参数, 让大家购机心里有底. 这里要提醒: 不是硬件参数好, 系统体验就一定好的.当然好的软件, 要用好的硬件支撑. 笔者觉得, 参数差不多就好, 外形, UI, 发热, 安全性比较重要. 曝光日期 2014年 手机类型 4G手机,3G手机,智能手机,拍照手机,平板手机 运营商定制 中

javascript深入理解js闭包(看了挺多的,感觉这篇比较透彻)

闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现. 一.变量的作用域 要理解闭包,首先必须理解Javascript特殊的变量作用域. 变量的作用域无非就是两种:全局变量和局部变量. Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量. Js代码 var n=999; function f1(){ alert(n); } f1(); // 999 另一方面,在函数外部自然无法读取函数内的局部变量. Js代码 function

JavaScript中的匿名函数及函数的闭包以及作用域

1. ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85

Cocos2d-x 3.x 开发(十八)10行代码看自动Batch,10行代码看自动剔除

1.概述 在游戏的运行过程中,图形的绘制是非常大的开销.对于良莠不齐的Android手机市场,绘制优化较好的游戏,可以在更多的手机上运行,因此也是优化的重中之重.图形方面的优化主要体现在减少GUP的绘制次数上.这里我们分别从自动优化渲染批次和绘制剔除两个方面来看新版本在绘制上的优化. 2.自动batch 在Cocos2d-x 3.x中,抛弃了先前手动编写BatchNode,采用自动管理的方式.说起BatchNode,就难免涉及到显卡底层的绘制原理.简单的说,每提交一条绘制指令到显卡都会产生消耗,

一张图读懂虚拟化的发展历史,看VMware Horizon如何紧跟Citrix的步伐

经常碰到有朋友问我Citrix和VMware公司区别,为了还原一个真相,博主特意整理了两家公司的异同,特别是公司的起家史.由于Citrix是桌面虚拟化和应用虚拟化的业内翘楚,我们着重分析的是这两家公司在桌面虚拟化和应用虚拟化的发展历史,如有错误还请大家指正. 公司大事记 我们先看看两家公司里程碑的几个时间点吧. 公司成立时间:Citrix在1989年,VMware在1998年: 公司上市时间(IPO):Citrix在1995年,VMware在2007年: 共享桌面虚拟化(应用虚拟化的一种)发布时

poj 1502 MPI Maelstrom Dijkstra算法的简单运用 ,呵呵,,我估计有很多人都没看懂什么意思,我也看了很久

MPI Maelstrom Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 5831   Accepted: 3621 Description BIT has recently taken delivery of their new supercomputer, a 32 processor Apollo Odyssey distributed shared memory machine with a hierarchic

听说看了这篇文章就彻底搞懂了什么是OPC(上)

从2000年初以来,我们就一直在使用OPC软件互操作性标准,而那些正准备踏入和想要踏入工业自动化领域的人们却对这些含义感到困惑. 所以在本中,我将系统地为你梳理OPC知识. OPC首字母缩写词代表什么? 问一个OPC老手,他们或许会笑,因为他们知道有很多含义!在经典的且程序化的说法是:O LE for P rocess C ontrol(用于过程控制的OLE).OLE 或对象链接和嵌入是Windows的基本早期构建块,允许应用程序在它们之间共享复杂的信息.我记得Windows 3.0的第一个演示

什么是5G,看了这篇文章你就彻底懂了

人类已经经历了六次信息技术革命为: 第一次:语言的使用 让信息可以分享 第二次:文字的创造 让信息可以记录 第三次:印刷术的发明 让信息可以传得更远 第四次:无线电的发明 让信息可以远距离实时传输 第五次:电视的发明 让信息变成远距离.实时还可以多媒体传输 第六次:互联网的发明 让信息变成远距离实时多媒体,还可以双向交互 现在我们正在经历第七次信息技术革命:移动互联.智能感应.大数据.智能学习.云计算共同形成的万物互联时代,而这一切的核心基础就是5G. 为什么是5G,工具吧带大家看看5G的6大特

通过一个简单闭包,弄懂JS执行原理

<script> function f1()            {                var age = 18; function f2()                {                    alert('我今年:'+age+'岁');                } return f2;            }                var func3 = f1(); func3();</script>            闭包