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

 更新时间:2012年03月01日 22:21:21   作者:  
同一个标示符,先后用var和function声明它。最后它是什么呢
复制代码 代码如下:

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代码

    一篇文章教你写出干净的JavaScript代码

    JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型,下面这篇文章主要给大家介绍了如何通过一篇文章教你写出干净的JavaScript代码,需要的朋友可以参考下
    2021-09-09
  • JavaScript继承的实现方式详解

    JavaScript继承的实现方式详解

    JavaScript 是一门基于原型的语言,它的继承机制与传统的基于类的面向对象编程有所不同,尽管 ES6 引入了 class 语法,但本质上仍然是基于原型链的继承,本文将详细介绍 JavaScript 继承的几种实现方式,需要的朋友可以参考下
    2025-03-03
  • jQuery实现动态文字搜索功能

    jQuery实现动态文字搜索功能

    本文主要介绍了jQuery实现动态文字搜索功能的分析过程,文章底部提供了完整的代码。具有一定的参考价值,下面跟着小编一起来看下吧
    2017-01-01
  • 用JavaScript仿PS里的羽化效果代码

    用JavaScript仿PS里的羽化效果代码

    JavaScript圆形虚幻效果,跟PS里面的羽化效果有点像,需要的朋友可以参考下。
    2011-12-12
  • JavaScript实现输入框(密码框)出现提示语

    JavaScript实现输入框(密码框)出现提示语

    有时候我们需要在登陆表单有一些提示语言,比如“请输入用户名”和“请输入密码”等语言,通过本文给大家介绍JavaScript实现输入框(密码框)出现提示语的相关知识,对js实现输入框提示相关知识感兴趣的朋友一起学习吧
    2016-01-01
  • 微信小程序用canvas画图并分享

    微信小程序用canvas画图并分享

    这篇文章主要为大家详细介绍了微信小程序用canvas画图,并实现分享功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-03-03
  • 微信小程序自定义组件的实现方法及自定义组件与页面间的数据传递问题

    微信小程序自定义组件的实现方法及自定义组件与页面间的数据传递问题

    这篇文章主要介绍了微信小程序自定义组件的实现方法及自定义组件与页面间的数据传递 ,需要的朋友可以参考下
    2018-10-10
  • httpclient模拟登陆具体实现(使用js设置cookie)

    httpclient模拟登陆具体实现(使用js设置cookie)

    最简单的方法就是通过得到的cookie定制一个httpclient,感兴趣的朋友可以了解下本文
    2013-12-12
  • 基于JavaScript Array数组方法(新手必看篇)

    基于JavaScript Array数组方法(新手必看篇)

    下面小编就为大家带来一篇基于JavaScript Array数组方法(新手必看篇)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-08-08
  • 微信小程序 实例开发总结

    微信小程序 实例开发总结

    这篇文章主要介绍了微信小程序 开发过程中遇到问题总结的相关资料,需要的朋友可以参考下
    2017-04-04

最新评论