javascript的作用域问题
黄舟
黄舟 2017-04-11 12:18:25
[JavaScript讨论组]

今天被javascript的作用域搞混了,请各位帮我看下这段代码



这段代码提示ReferenceError: Can't find variable: test
但是当把$(document).ready(function()删掉或者把var test改成test,即不用var的时候,运行就正常了,可是变量i不管有没有var都是可以获取得到的,这是什么原因?

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回复(2)
伊谢尔伦

这种用字符串表示的计时器,首先解析为可执行的表达式,然后再执行,而且是在全局作用域内执行,所以找不到 test你把"test()"换成test就可以了,注意不要加引号

迷茫

首先在我的记忆中setTimeout();这个东东的第一个参数是个函数,注意,是个函数。第二,变量不管有木有var这个东东其实在这里并不打紧,因为相当于是个全局变量。你不写他就默认在window作用域下,写了效果也一样。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号