javascript - js的执行顺序是怎样的?

查看:72
本文介绍了javascript - js的执行顺序是怎样的?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

1.没弄懂js的执行顺序,执行下面代码,刚开始alert的时候,a还没有声明,不是应该直接报错吗?为什么先是显示这个function,然后显示10,显示3,最后还报错了?不是一开始就应该报错了吗?

alert(a)
a();
var a=3;
function a(){
alert(10)
}
alert(a)
a=6;
a()

解决方案

问了下同学,知道了为什么会出现那样的情况,首先要明白的概念
1.js中,变量声明和函数声明是会提前的,并且函数声明会优于变量声明。所以,在声明a之前alert(a),并不会报错。以及,第一个alert,出现的是a这个function,并不是变量a。
2.第二个alert,无需多言,只是执行a这个函数。
3.第三个alert,结果是3,因为运行到了这里之前,执行了 var a=3;。所以a变成了3。
4.最后报错是因为,执行到a();a进行了两次赋值,第一次是var a=3;,第二次是a=6;,但是无论怎样,a都不是函数,所以报错了。

这篇关于javascript - js的执行顺序是怎样的?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆