容易犯错的作用域

news/2024/7/24 12:46:18

遇到很多作用域上的问题,容易犯错,犯错并不可怕,可怕的是明知犯错,还不去弥补。

作用域定义了变量或者函数可有权访问的范围。

外部环境不能访问内部环境的任何变量与函数。

作用域链

在 JavaScript 中,每个函数都有着自己的作用域,在每次调用一个函数的时候 ,就会进入一个函数内的作用域,而当函数执行返回以后,就返回调用前的作用域。

当代码在一个作用域内执行时,就会根据其上下文创建一个作用域链,该作用域链的用途就是控制当前作用域对于内所有的变量与函数的有序访问。作用域链的最前端,始终都是当前执行代码所在的作用域的变量对象。

权威指南的讲明

JavaScript中的函数运行在它们被定义的作用域里,而不是它们被执行的作用域里

var name = 'jim';
function showName(){
    console.log(name);
}
function show(){
    var name = 'tom';
    showName();
}
show();
// 输出结果为jim

对上式变式

var name = 'jim';
function show(){
    var name = 'tom';
    function showName(){
    console.log(name);
}
    showName();
}
show();
// 输出结果为tom

 

转载于:https://www.cnblogs.com/goweb/p/5652460.html


http://www.niftyadmin.cn/n/1831129.html

相关文章

java jar 设置端口_详解SpringBoot修改启动端口server.port的四种方式

方式一: 配置文件 application.propertiesserver.port7788方式二: java启动命令# 以应用参数的方式java -jar --server.port7788# 或以 jdk 参数的方式java -dserver.port7788 -jar 方式三: 环境变量 server_portlinux:server_port7788 java -jar windows:set server_port7788j…

什么是VCS?

1、http://wenku.baidu.com/view/ba2bb84acf84b9d528ea7a31.html?review 转载于:https://www.cnblogs.com/liutianyi10/p/4506099.html

js javascript:void(0) 真正含义

http://www.cnblogs.com/opper/archive/2009/01/12/1373971.htmljs javascript:void(0) 真正含义我想使用过ajax的都常见这样的代码&#xff1a;<a href"javascript:doTest2();void(0);">here</a>但这儿的void(0)究竟是何含义呢&#xff1f;Javascript中…

java中的前台传入参数检验_Controller类的检测前端传递参数的规范性

controller类的一个方法&#xff0c;前端可能传递过来很多参数&#xff0c;比如手机号码&#xff0c;顾客姓名&#xff0c;订单id&#xff0c;验证码......很多很多&#xff0c;类型也很多很多&#xff0c;很多入口方法参数尽不相同。后端入口方法这里 一般都会去检测这些参数的…

【普通の惨败】GDOI2015卖萌记

前记&#xff1a;这次可真的全程卖萌了。。。。 Day 0 早早坐上前往广州的火车&#xff0c;然后转车到韶关 然后就到了偏远郊区的&#xff08;准&#xff09;四星酒店 周围连路灯都没有&#xff0c;极其僻静极其荒凉 大家都极其安静地回到自己房间复习 这一天也就这么过去了 Da…

WCF中配置文件解析

WCF中配置文件解析[1] 2014-06-14 WCF中配置文件解析 参考 WCF中配置文件解析 返回 在WCF Service Configuration Editor的使用中&#xff0c;我们通过配置工具自动生成了WCF服务端的config文件。现在我们来看下这个配置文件各个标签的意义&#xff1a; 1 <?xml version&q…

Linux(13):期中架构(5)--- 前端部分:keepalived高可用 HTTPS iptables防火墙...

keepalived 高可用集群 1. keepalived服务概念说明 # 1.1 keepalived软件的作用? Keepalived软件起初是专为LVS负载均衡软件设计的&#xff0c; 用来管理并监控LVS集群系统中各个服务节点的状态&#xff0c;后来又加入了可以实现高可用的VRRP功能Keepalived软件主要是通过VRRP…

使用批处理/bat设置、启动和停止服务

方法 一&#xff1a; sc.exe常用功能: 1、更改服务的启动状态. 2、删除服务&#xff08;否则不建议删除任何系统服务&#xff0c;特别是基础服务 慎用&#xff09; 3、停止或启动服务&#xff08;功能上类似于net stop/start&#xff0c;但速度更快且能停止的服务更多&#xff…