js中 为什么 全局变量在方法中无法使用

 我来答
匿名用户
2019-07-20
展开全部
我相信大多数人都是把<script>提到<head>里面去,这样以来格式工整,心情舒畅,强迫症患者酣畅淋漓。但是不幸的是html代码执行顺序是自顶向下的,如果你只是定义普通的变量类型倒无所谓,一旦涉及到Element就惨了,<body>里的元素还没被加载出来,js语句就已经执行完了。然后你测试就会发现,你定义的元素变量,全部返回null,根本没有捕获元素,但是为了代码的效率,你又不得不将getElement等语句定义为一个个全局变量以便调用,诶那咋办勒。
一般来说这就代码习惯有关了,大多数都是把<script>拉到<body>靠后位置去,这样元素就先被加载了。还有比较好的代码风格是一个元素的事件对应一个js语句来写,当然由于全局变量会被提后的缘故,靠前的代码又用不了,所以大部分代码都是写在后面的。
所以嘛,客观的来讲:
方法一:按照自顶向下加载的顺序合理排列js语句。
方法二:用window.onload自行设定加载顺序。(逃
匿名用户
推荐于2017-08-24
展开全部

是这个意思吗?

<html>
<head>
  <script>
  all="1";
    function alerts(){
      alert(all);
    }
  </script>
  </head>
<body>
  <div>
    <span onclick="alerts()">测试</span> 
  </div>
</body>
</html>
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
h2...8@98ued.com
2017-08-22
知道答主
回答量:30
采纳率:0%
帮助的人:2.8万
展开全部
你如果有问题描述我还会考虑回答你
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lglong519
2017-08-20 · TA获得超过713个赞
知道小有建树答主
回答量:1110
采纳率:61%
帮助的人:463万
展开全部
全局变量在方法中可以使用的.
你为什么会说全局变量在方法中无法使用呢?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xxx355200
2017-08-20 · TA获得超过220个赞
知道答主
回答量:112
采纳率:76%
帮助的人:19.5万
展开全部
没有初始值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式