JS会先执行主要代码,最后去执行次要的代码(包括setTimeout和setInterval中注册的函数,以及事件的绑定操作)。最后才会执行就可能会导致变量的值"出错"的可能。
解决方式:(函数配合形参)(JS中只有函数可以限定作用域)
1.闭包(函数)的方式
2.立即执行函数表达式的方式 https://blog.csdn.net/houyanhua1/article/details/79844876demo.html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script>
//线程:一个线程一次只能处理一件事情,多个线程就可以多个事情同时进行
//JS是单线程的!
//JS中,分了三个任务
//1.渲染任务
//2.js的代码执行任务