javascript核心技术(十八)作用域链

[复制链接]
查看: 604|回复: 0

832

主题

1426

帖子

6802

积分

管理员

人亦已歌

Rank: 12Rank: 12Rank: 12

积分
6802

活跃会员热心会员推广达人宣传达人突出贡献优秀版主荣誉管理论坛元老

发表于 2023-1-23 11:21:06 | 显示全部楼层 |阅读模式
首先我们需要明白以下几个基本原理:
全局作用域中的变量,叫做全局变量,在整个环境都可以使用。

局部作用域中的变量,叫做局部变量,只能在局部作用域中使用。

局部作用域可以使用全局作用域的变量,即函数内部可以使用函数外部的变量。

举例一:
// 函数内部可以使用函数外部的变量
var num = 100;
function f1(){
    console.log(num);
}
f1();//结果为100


举例二:
//函数外部不可以使用函数内部的变量
function f2(){
    var num = 100;
}
f2();
console.log(num); //这里会报错,因为函数外部没有num这个变量


举例三:
//函数中定义变量,如果不使用var,相当于在函数外部声明了全局变量,在函数内部进行的赋值
var num;
function f3(){
        num = 100;
}
f3();
console.log(num); // 这里输出100


举例四:
//最内层作用域,使用变量,自己没有,则先向外找一层,如果还是没有,就一直向外找。直到找到一个为止。
//这种从内向外查找变量值的链式方式称为作用域链。
var num = 100;
function f1(){
    var num = 200;
    console.log(num);

    function f2(){
        console.log(num);
    }
    f2();
}

f1();
console.log(num);

javascript核心技术(十八)作用域链

以上就是关于作用域链的讲解,请大家务必弄清楚这些基本语法后再进行下面的学习。


懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1、请认真发帖,禁止回复纯表情,纯数字等无意义的内容!帖子内容不要太简单!
2、提倡文明上网,净化网络环境!抵制低俗不良违法有害信息。
3、如果你对主帖作者的帖子不屑一顾的话,请勿回帖。谢谢合作!
3、问答求助区发帖求助后,如有其他用户热心帮您解决问题后,请自觉点击设为最佳答案按钮。

精彩图文
 
 
在线客服
技术支持
工作时间:
8:00-18:00
软著登字:
1361266号
官方微信扫一扫

QQ|小黑屋|慈众营销 ( 粤ICP备15049986号 )|网站地图

自动发帖软件 | 自动发帖器 | 营销推广软件 | 网络营销工具 | 网络营销软件 | 网站推广工具 | 网络推广软件 | 网络推广工具 | 网页推广软件 | 信息发布软件 | 网站推广工具 | 网页推广软件

Powered by Discuz! X3.4   © 2012-2020 Comsenz Inc.  慈众科技 - Collect from 深圳吉宝泰佛文化有限公司 公司地址:罗湖区黄贝街道深南东路集浩大厦A1403

返回顶部 返回列表