5个可以帮你理解JavaScript核心闭包和作用域的小例子


Posted in Javascript onOctober 08, 2014

这里有5个小脚本,有助于你真正理解JavaScript核心?闭包和作用域。没有在控制台运行之前,尝试回答每个案例中会弹出什么内容,然后你可以创建一个测试文件去核对你的答案。你准备好了吗?

1、

 if (!("a" in window)) {

     var a = 1;

 }

 alert(a);

2、
 var a = 1,

     b = function a(x) {

         x && a(--x);

     };

 alert(a);

3、
 function a(x) {

     return x * 2;

 }

 var a;

 alert(a);

4、
 function b(x, y, a) {

     arguments[2] = 10;

     alert(a);

 }

 b(1, 2, 3);

5、
 function a() {

     alert(this);

 }

 a.call(null);

我的预测答案分别是:undefined、1、不知道、10、null

答案在本文末尾,看答案之前,你敢留下你的猜测吗?

 

 

 

正确答案:1、undefined   2、1   3、function a(x){ return x * 2}   4、10  5、[object window]

Javascript 相关文章推荐
Mootools 1.2教程(3) 数组使用简介
Sep 14 Javascript
javascript检测浏览器flash版本的实现代码
Dec 06 Javascript
上传的js验证(图片/文件的扩展名)
Apr 25 Javascript
jquery制作居中遮罩层效果分享
Feb 21 Javascript
JavaScript时间转换处理函数
Apr 14 Javascript
javascript实现youku的视频代码自适应宽度
May 25 Javascript
jQuery实现文件上传进度条特效
Aug 12 Javascript
JS中动态创建元素的三种方法总结(推荐)
Oct 20 Javascript
完美解决jQuery的hover事件在IE中不停闪动的问题
Feb 10 Javascript
JavaScript前端页面搜索功能案例【基于jQuery】
Jul 10 jQuery
vue-cli 关闭热更新操作
Sep 18 Javascript
vue/cli 配置动态代理无需重启服务的方法
May 20 Vue.js
JavaScript中获取样式的原生方法小结
Oct 08 #Javascript
吐槽一下我所了解的Node.js
Oct 08 #Javascript
Node.js 的异步 IO 性能探讨
Oct 08 #Javascript
JS中的form.submit()不能提交表单的错误原因
Oct 08 #Javascript
js数值计算时使用parseInt进行数据类型转换(jquery)
Oct 07 #Javascript
js交换排序 冒泡排序算法(Javascript版)
Oct 04 #Javascript
Javascript获取当前时间函数和时间操作小结
Oct 01 #Javascript
You might like
推荐几部必看的DC动画电影
2020/03/03 欧美动漫
php XMLWriter类的简单示例代码(RSS输出)
2011/09/30 PHP
PHP大转盘中奖概率算法实例
2014/10/21 PHP
php生成图片缩略图的方法
2015/04/07 PHP
Yii2下session跨域名共存的解决方案
2017/02/04 PHP
php和nginx交互实例讲解
2019/09/24 PHP
用 JavaScript 迁移目录
2006/12/18 Javascript
不错的JS中变量相关的细节分析
2007/08/13 Javascript
JSON 数据格式介绍
2012/01/13 Javascript
JS实现自适应高度表单文本框的方法
2015/02/25 Javascript
Bootstrap网格系统详解
2016/04/26 Javascript
详解Node.js实现301、302重定向服务
2017/04/07 Javascript
一文让你彻底搞清楚javascript中的require、import与export
2017/09/24 Javascript
微信小程序实现底部导航
2018/11/05 Javascript
详解Vue SSR( Vue2 + Koa2 + Webpack4)配置指南
2018/11/13 Javascript
layui之数据表格--与后台交互获取数据的方法
2019/09/29 Javascript
vant picker+popup 自定义三级联动案例
2020/11/04 Javascript
[02:50]2014DOTA2 TI预选赛预选赛 大神专访第一弹!
2014/05/21 DOTA
[46:55]LGD vs Liquid 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/19 DOTA
一个基于flask的web应用诞生 使用模板引擎和表单插件(2)
2017/04/11 Python
Python文件读写保存操作的示例代码
2018/09/14 Python
Python人工智能之路 jieba gensim 最好别分家之最简单的相似度实现
2019/08/13 Python
使用python实现对元素的长截图功能
2019/11/14 Python
python中有关时间日期格式转换问题
2019/12/25 Python
anaconda升级sklearn版本的实现方法
2021/02/22 Python
Jo Malone美国官网:祖玛珑香水
2017/03/27 全球购物
Luxplus瑞典:香水和美容护理折扣
2018/01/28 全球购物
光电信息专业应届生求职信
2013/10/07 职场文书
电脑饰品店的创业计划书
2014/01/21 职场文书
酒店节能降耗方案
2014/05/08 职场文书
优秀教师先进个人事迹材料
2014/08/31 职场文书
医院领导班子整改方案
2014/10/01 职场文书
2014年小学工作总结
2014/11/26 职场文书
运动会3000米加油稿
2015/07/21 职场文书
js实现自动锁屏功能
2021/06/02 Javascript
教你用Python爬取英雄联盟皮肤原画
2021/06/13 Python