jquery10 闭包示例
o = {
a:1,
o:{
b:2,
f : function(){
alert(o.a);//
alert(o.b);//undefined
}
}
}
o.o.f();
o = {
a:7,
o : {
a:1,
o:{
b:2,
f : function(){
alert(o.a);//
alert(o.b);//undefined
}
}
}
}
o.o.o.f();
o = {//这个o加到window闭包里面去了
a:7,
o : {//这个o没有
a:1,
o:{//这个o没有
b:2,
f : function(){
alert(o.a);//
alert(o.b);//undefined
}
}
}
}
o.o.o.f();
f = function(){
return {
a:1,
o:{
b:2,
f : function(){
alert(o.a);//o is not defined ,说明o不存在
alert(o.b);//o is not defined ,说明o不存在
}
}
}
}
f().o.f();
f = function(){
o = {a:7,b:8}
return {
a:1,
o:{
b:2,
f : function(){
alert(o.a);//
alert(o.b);//8 return的东西不在闭包里面
}
}
}
}
f().o.f();
f = function(){
o= {//这个o加到函数闭包里面去了
a:1,
o:{//这个o没有
b:2,
f : function(){
alert(o.a);//
alert(o.b);//undefined
}
}
}
return o;
}
f().o.f();
f = function(){
return {
a:1,
o:{
b:2,
f : function(){
o = {a:3,b:4}
alert(o.a);//
alert(o.b);//
}
}
}
}
f().o.f();
f = function(){
o = {a:5,b:6}
return function(){
a=1,
o={
b:2,
f : function(){
alert(o.a);//unudefined 以函数作为闭包层级,一层一层的向上查找,找到了就不找了
alert(o.b);//
}
}
return o;
}
}
f()().f();
f = function(){
o = {a:5,b:6}
return function(){
a=1,
b={
b:2,
f : function(){
alert(o.a);//
alert(o.b);//
}
}
return b;
}
}
f()().f();
f = function(){
return function(){
o = {a:15,b:16}//加到闭包
a=1,
b={//加到闭包
o:{a:11,b:12}, //没有加到闭包
b:2,
f : function(){
alert(o.a);//
alert(o.b);//
}
}
return b;
}
}
f()().f();
jquery10 闭包示例的更多相关文章
- JavaScript闭包示例
在下面的例子中,为什么点击所有的段落p输出都是5,而不是alert出对应的0,1,2,3,4. <html> <head> <meta charset="utf ...
- Closure闭包示例
var foo = function(){ var cnt = 0; return function(){ return cnt++; }; }; var closure = foo(); conso ...
- 一个简单的Javascript闭包示例
//=====用闭包实现函数的Curry化===== //数字求和函数的函数生成器 function addGenerator( num ){ //返回一个简单的匿名函数,求两个数的和,其中第一个数字 ...
- 通过示例学习JavaScript闭包
译者按: 在上一篇博客,我们通过实现一个计数器,了解了如何使用闭包(Closure),这篇博客将提供一些代码示例,帮助大家理解闭包. 原文: JavaScript Closures for Dummi ...
- JavaScript学习总结——我所理解的JavaScript闭包
一.闭包(Closure) 1.1.什么是闭包? 理解闭包概念: a.闭包是指有权限访问另一个函数作用域的变量的函数,创建闭包的常见方式就是在一个函数内部创建另一个函数,也就是创建一个内部函数,创建一 ...
- 我所理解的JavaScript闭包
目录 一.闭包(Closure) 1.1.什么是闭包? 1.2.为什么要用闭包(作用)? 1.2.1.保护函数内的变量安全. 1.2.2.通过访问外部变量,一个闭包可以暂时保存这些变量的上下文环境,当 ...
- 《你不知道的JavaScript》第一部分:作用域和闭包
第1章 作用域是什么 抛出问题:程序中的变量存储在哪里?程序需要时,如何找到它们? 设计 作用域 的目的:为了更好地存储和访问变量. 作用域:根据名称查找变量的一套规则,用于确定在何处以及如何查找变量 ...
- python 装饰器、内部函数、闭包简单理解
python内部函数.闭包共同之处在于都是以函数作为参数传递到函数,不同之处在于返回与调用有所区别. 1.python内部函数 python内部函数示例: def test(*args): def a ...
- C#编译器闭包机制
背景 C# 在编译器层面为我们提供了闭包机制(Java7 和 Go 也是这种思路),本文简单的做个解释. 背景知识 你必须了解:引用类型.值类型.引用.对象.值类型的值(简称值). 关于引用.对象和值 ...
随机推荐
- sql 除法运算 保留两位小数
sql 除法运算 保留两位小数 SELECT 1530/60 select cast(1530*1./60 as decimal(18,1))
- 运营商 WLAN
运营商 WLAN 运营商 WLAN 是 Android 9 中引入的一项功能,该功能可让设备自动连接到运营商实现的 WLAN 网络.在高度拥塞或信号覆盖范围较小的区域(如体育场或地铁站),运营商 WL ...
- iOS开发——国际化支持Localizable.strings
这篇写的不多,但是绝对诚意满满.不会像别人一样,要不不详细,要不罗里吧嗦一堆. 1.创建Localizable.strings文件 Command+N—>iOS—>Resource—> ...
- CF85E Guard Towers(二分答案+二分图)
题意 已知 N 座塔的坐标,N≤5000 把它们分成两组,使得同组内的两座塔的曼哈顿距离最大值最小 在此前提下求出有多少种分组方案 mod 109+7 题解 二分答案 mid 曼哈顿距离 >mi ...
- docker常用命令,学习笔记
- 常用命令 https://docs.docker.com images > docker images # 查看本地镜像 > docker images -a # 查看所(含中间镜像层 ...
- Android中图片优化之webp使用
博客出自:http://blog.csdn.net/liuxian13183,转载注明出处! All Rights Reserved ! 有关图片的优化,通常我们会用到LruCache(使用强引用.强 ...
- 洛谷 P1407 工资
P1407 工资 题目描述 有一家世界级大企业,他们经过调查,发现了一个奇特的现象,竟然在自己的公司里,有超过一半的雇员,他们的工资完全相同! 公布了这项调查结果后,众多老板对于这一现象很感兴趣,他们 ...
- HDU 5391-Zball in Tina Town(数论)
题目地址:pid=5391">HDU 5391 题意: Tina Town 是一个善良友好的地方,这里的每个人都互相关心.Tina有一个球,它的名字叫zball. zball非常奇妙, ...
- Android旋转屏幕后国际化语言失效的解决的方法
本文已同步至个人博客:liyuyu.cn 近期在项目中使用到了国际化多语言(英文+中文),但在使用时发现了一个问题.当屏幕旋转后.APP语言(中文)自己主动转换为了系统语言(英文).设置了Activi ...
- 网易2016研发project师笔试题
网易2016研发project师笔试题 2015/12/9 11:25(网上收集整理的,參考答案在后面,若有错误请大神指出) 1. 运行指令find / -name "test.c" ...