JavaScript中函数声明优先于变量声明的实例分析


Posted in Javascript onMarch 01, 2012
var a; // 声明一个变量,标识符为a 
function a() { // 声明一个函数,标示符也为a 
} 
alert(typeof a);

显示的是“function”,即function的优先级高于var。
有人觉得这是代码顺序执行的原因,即a被后执行的funcion覆盖了。好,将它们调换下。
function a() { 
} 
var a; 
alert(typeof a);

结果仍然显示的是“function”而非“undefined”。即函数声明优先于变量声明。
我们把代码稍作修改,声明a时同时赋值。

function a() { 
} 
var a = 1; // 注意此处 
alert(typeof a);

这时显示的是“number”却不是“function”了,这相当于

function a() { 
} 
var a; 
a = 1; // 注意此处 
alert(typeof a);

即把“var a = 1”拆分为两步。 a被重新赋值了,自然是最后的那个值。
Javascript 相关文章推荐
JS对象与JSON格式数据相互转换
Feb 20 Javascript
ajax异步刷新实现更新数据库
Dec 03 Javascript
基于jQuery中对数组进行操作的方法
Apr 16 Javascript
AngularJs bootstrap搭载前台框架——准备工作
Sep 01 Javascript
AngularJS Phonecat实例讲解
Nov 21 Javascript
Angularjs中使用指令绑定点击事件的方法
Mar 30 Javascript
JS实现队列的先进先出功能示例
May 10 Javascript
Vuex利用state保存新闻数据实例
Jun 28 Javascript
详解通过源码解析Node.js中cluster模块的主要功能实现
May 16 Javascript
mpvue开发音频类小程序踩坑和建议详解
Mar 12 Javascript
Vue实战教程之仿肯德基宅急送App
Jul 19 Javascript
基于JS抓取某高校附近共享单车位置 使用web方式展示位置变化代码实例
Aug 27 Javascript
Jquery提交表单 Form.js官方插件介绍
Mar 01 #Javascript
jquery.artwl.thickbox.js  一个非常简单好用的jQuery弹出层插件
Mar 01 #Javascript
jQuery AJAX实现调用页面后台方法和web服务定义的方法分享
Mar 01 #Javascript
javascript中IE浏览器不支持NEW DATE()带参数的解决方法
Mar 01 #Javascript
JavaScript自定义DateDiff函数(兼容所有浏览器)
Mar 01 #Javascript
JavaScript版DateAdd和DateDiff函数代码
Mar 01 #Javascript
js编码之encodeURIComponent使用介绍(asp,php)
Mar 01 #Javascript
You might like
php fckeditor 调用的函数
2009/06/21 PHP
解析curl提交GET,POST,Cookie的简单方法
2013/06/29 PHP
php实现的DateDiff和DateAdd时间函数代码分享
2014/08/16 PHP
PHP中创建图像并绘制文字的例子
2014/11/19 PHP
PHP提示Warning:phpinfo() has been disabled函数禁用的解决方法
2014/12/17 PHP
PHP正则获取页面所有图片地址
2016/03/23 PHP
thinkphp3.2实现上传图片的控制器方法
2016/04/28 PHP
javascript Discuz代码中的msn聊天小功能
2008/05/25 Javascript
javascript定义函数的方法
2010/12/06 Javascript
浅析showModalDialog数据缓存问题(用禁止浏览器缓存解决)
2013/07/09 Javascript
jquery简单实现幻灯片的方法
2015/08/03 Javascript
使用coffeescript编写node.js项目的方法汇总
2015/08/05 Javascript
浅谈javascript的call()、apply()、bind()的用法
2016/02/21 Javascript
对javascript继承的理解
2016/10/11 Javascript
用jQuery的AJax实现异步访问、异步加载
2016/11/02 Javascript
JavaScript中的this陷阱的最全收集并整理(没有之一)
2017/02/21 Javascript
利用JS实现简单的瀑布流加载图片效果
2017/04/22 Javascript
jQuery开源组件BootstrapValidator使用详解
2017/06/29 jQuery
基于nodejs实现微信支付功能
2017/12/20 NodeJs
Three.js实现3D机房效果
2018/12/30 Javascript
JS立即执行的匿名函数用法分析
2019/11/04 Javascript
高效使用Python字典的清单
2018/04/04 Python
python实现ip代理池功能示例
2019/07/05 Python
详解Python Matplotlib解决绘图X轴值不按数组排序问题
2019/08/05 Python
Python中生成一个指定长度的随机字符串实现示例
2019/11/06 Python
Python中常用的高阶函数实例详解
2020/02/21 Python
python 常见的反爬虫策略
2020/09/27 Python
学生就业推荐信
2013/11/13 职场文书
汇源肾宝广告词
2014/03/20 职场文书
乡镇精神文明建设汇报材料
2014/08/15 职场文书
群众路线自我剖析及整改措施
2014/11/04 职场文书
夫妻双方自愿离婚协议书怎么写
2014/12/01 职场文书
单方投资意向书
2015/05/11 职场文书
圆明园纪录片观后感
2015/06/03 职场文书
《小小的船》教学反思
2016/02/18 职场文书
Java实现给Word文件添加文字水印
2022/02/15 Java/Android