1、 变量及其作用域:变量分为“全局变量”和“局部变量”,“全局变量”申明在函数外部,可供所有函数使用,而“局部变量”申明在函数体内部,只能在定义该变量的函数体内使用。

(备注:在申明变量时没有var关键字,而是直接赋值的变量均为全局变量)
<script type="text/javascript">
function main() {
n = 10;//这里的n为全局变量,可以被外部直接使用
}
main();
alert(n);
</script>
2、 在函数体内,局部变量的优先级高于全局变量。
<script type="text/javascript">
//网上看到的我认为很有代表性的一个例子,在函数体外部和内部都申明了相同名字的变量,变量的作用域问题,例子如下:
var n = 1;
function test() {
alert(n); //这里的a并不是全局变量,原因是函数体第四行申明了一个相同重名的局部变
//量a,如果把第四行a的申明注释掉,那么这里的a显示1,为全局变量。所以得
//出结论:全局变量a被局部变量a覆盖了。
//说明了JS函数在test()在执行前,函数体内的变量a都指向了局部变量,但本
//行输出的a在执行过程中还没有被赋值,所以显示undefined。
n = 2;
alert(n);
var n; //本行申明局部变量a
alert(n);
}
test();
alert(n);
</script>
按照我的理解,上面例子最后输出的答案应该是:1 2 2 1;但是正确的答案是:undefined 2 2 1; 原因就是函数体外部和内部都申明了相同名字的变量时,局部变量覆盖了全局变量。
3、 外部怎么读取函数体内部的局部变量呢?
一般来说,只有函数体内部可以直接得到外部的全局变量,但是外部要得到函数体内部的局部变量是不行的。但是,通过在函数体内部再定义一个函数返回局部变量,再从外部调用函数就能实现了。
<script type="text/javascript">
function f1() {
var n = 10;
function f2() {//在f1()内部再定义f2(),通过f2()访问f1()中的局部变量
alert(n);
}
return f2;//返回f1()局部变量n
}
var result = f1(); //在外部调用f1()函数,就能获取局部变量n的值
result(); // 10,即为n的值
</script>
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!
# js变量
# js
# 变量作用域
# JavaScript高级程序设计之变量与作用域
# JS中作用域以及变量范围分析
# JavaScript变量作用域及内存问题实例分析
# JS块级作用域和私有变量实例分析
# JavaScript变量类型以及变量作用域详解
# javascript 的变量、作用域和内存问题
# js 作用域和变量详解
# 关于JS变量和作用域详解
# JavaScript变量的作用域全解析
# JavaScript 变量、作用域及内存
# JavaScript中的变量作用域介绍
# js变量、作用域及内存详解
# 深入解析JavaScript中的变量作用域
# Javascript变量作用域详解
# JavaScript中变量的作用域详解
# 全局变量
# 体内
# 就能
# 体外
# 四行
# 还没有
# 很有
# 均为
# 我认为
# 可以直接
# 可供
# 要得
# 说明了
# 即为
# 过程中
# 应该是
# 实现了
# 一个函数
# 行输出
# 只能在
相关文章:
如何选择适配移动端的WAP自助建站平台?
网站制作员失业,怎样查看自己网站的注册者?
小说建站VPS选用指南:性能对比、配置优化与建站方案解析
建站之星收费标准详解:套餐费用及年费价格表一览
红河网站制作公司,红河事业单位身份证如何上传?
如何在万网ECS上快速搭建专属网站?
如何快速查询网站的真实建站时间?
制作门户网站的参考文献在哪,小说网站怎么建立?
全景视频制作网站有哪些,全景图怎么做成网页?
建站之星免费版是否永久可用?
音乐网站服务器如何优化API响应速度?
济南网站建设制作公司,室内设计网站一般都有哪些功能?
如何在VPS电脑上快速搭建网站?
行程制作网站有哪些,第三方机票电子行程单怎么开?
Python lxml的etree和ElementTree有什么区别
西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?
常州自助建站工具推荐:低成本搭建与模板选择技巧
c# F# 的 MailboxProcessor 和 C# 的 Actor 模型
非常酷的网站设计制作软件,酷培ai教育官方网站?
专业网站制作服务公司,有哪些网站可以免费发布招聘信息?
淘宝制作网站有哪些,淘宝网官网主页?
网站微信制作软件,如何制作微信链接?
已有域名建站全流程解析:网站搭建步骤与建站工具选择
定制建站流程步骤详解:一站式方案设计与开发指南
魔方云NAT建站如何实现端口转发?
建站之星导航如何优化提升用户体验?
如何选择高效响应式自助建站源码系统?
哈尔滨网站建设策划,哈尔滨电工证查询网站?
制作网站外包平台,自动化接单网站有哪些?
建站之星如何实现五合一智能建站与营销推广?
如何快速生成凡客建站的专业级图册?
建站为何优先选择香港服务器?
网站制作和推广的区别,想自己建立一个网站做推广,有什么快捷方法马上做好一个网站?
制作网页的网站有哪些,电脑上怎么做网页?
Swift中switch语句区间和元组模式匹配
如何通过建站之星自助学习解决操作问题?
,在苏州找工作,上哪个网站比较好?
深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?
建站之星如何优化SEO以实现高效排名?
建站之星代理如何获取技术支持?
如何在云主机上快速搭建网站?
实惠建站价格推荐:2025年高性价比自助建站套餐解析
如何用景安虚拟主机手机版绑定域名建站?
清除minerd进程的简单方法
网站好制作吗知乎,网站开发好学吗?有什么技巧?
建站之星安装需要哪些步骤及注意事项?
如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法
如何用虚拟主机快速搭建网站?详细步骤解析
香港服务器网站推广:SEO优化与外贸独立站搭建策略
,巨量百应是干嘛的?
*请认真填写需求信息,我们会在24小时内与您取得联系。