JavaScript中函数声明优先于变量声明

企鹅博客
企鹅博客
企鹅博客
25193
文章
0
评论
2019年10月1日04:40:43 评论 141 views
广告也精彩

同一个标示符,先后用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被重新赋值了,自然是最后的那个值。

企鹅博客
  • 本文由 发表于 2019年10月1日04:40:43
  • 转载请务必保留本文链接:https://www.qieseo.com/386277.html
使用js提交表单form js教程

使用js提交表单form

首先我们先用html创建一个表单 Name: Email: <--一般情况下,这里是使用submit--> 在这个表单中,我们没用使用submit,我们准备使用js来提交这个表单。首先介绍...
js下载以及修改文件名的实例教程 js教程

js下载以及修改文件名的实例教程

这篇文章主要为大家详细介绍了js下载文件并修改文件名的代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 用js下载文件,使用<a>标签,添加download属性即可。 var a =...

发表评论