首页 > 其他分享 >11月15日函数作用域和闭包函数

11月15日函数作用域和闭包函数

时间:2023-11-15 19:37:06浏览次数:34  
标签:11 闭包 函数 f1 作用域 function 全局

目录

1.函数作用域

js内的函数作用域与python内的作用域是一样的。

查找顺序:

首先在函数内部查找变量,找不到则到外层函数查找,逐步找到最外层。

1.全局作用域(Global Scope):

  • 全局作用域是在整个程序中都可以访问的作用域。

  • 在全局作用域中声明的变量在整个程序中都可见。

  • 全局作用域通常是在代码文件的最顶层声明的。

例子如下

var a = "上海";
function B(){
    console.log(a);
}
function f1(){
    var a = "北京";
    return B;
}
var c = f1();
c()

在这个代码里面我已经将a="上海"的声明成了全局作用域。就算我在函数内重新声明了a="北京"它也是局部作用域而不是全局作用域。

2.闭包函数

js闭包函数和python内闭包函数作用是一样的,就是格式有些变化

基本格式

function f(a){
  function f1(){
    console.log(a);
  }
  return f1();
}

在上面的基本格式中将在f函数内再嵌套一个函数f1然后在f1内写函数体进行使用,最后将f1return出来(python闭包函数的处理思路)。

标签:11,闭包,函数,f1,作用域,function,全局
From: https://www.cnblogs.com/slzjb/p/17834584.html

相关文章

  • CF1173B
    题目简述题目要求在一个\(m\timesm\)的棋盘上放置\(n\)个棋子,使得满足以下规则:对于任意的两个棋子\(i\)和\(j\),有\(|r_i-r_j|+|c_i-c_j|\geq|i-j|\)。思路简述\(m\)的最小值为\(\frac{n}{2}+1\)。接下来我们详细解释一下为什么这样的放置方式能够满足规则。思路......
  • 无涯教程-Dart - Inserting Elements into a List函数
    可变列表可以在运行时动态增长,List.add()函数将指定的值附加到List的末尾,并返回修改后的List对象,如下所示。voidmain(){Listl=[1,2,3];l.add(12);print(l);}它将产生以下输出-[1,2,3,12]List.addAll()函数接受多个用逗号分隔的值,并将它们附加到列......
  • 11.15每日总结(阅读笔记5)
    《人月神话》是一部我近期阅读的书籍,它给我留下了深刻的印象。这本书主要探讨了项目管理和人际关系之间的复杂性和挑战,让我有了许多新的思考和认识。首先,书中的每个章节都引人入胜,作者通过生动的案例和有趣的故事,让读者更好地理解了项目管理和人际关系的实质。特别是在处理项目延......
  • 11月15每日打卡
    企业erp: index:<!DOCTYPEhtml><htmllang="en"><head><metacharset="utf-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="viewport"content=&q......
  • 无涯教程-Dart - Single函数
    检查列表是否只有一个元素并返回它。Single-语法List.singleSingle-示例voidmain(){varlst=newList();lst.add(12);print("Thelisthasonlyoneelement:${lst.single}");}它将产生以下输出-Thelistvaluesinreverseorder:(13,12)它......
  • 函数的拟合 | 实际问题模型化
    前言我们认知和解决实际问题常常是通过函数这一抓手来完成的,但是对实际问题而言,一拿到手谁也不知道其对应的函数模型是什么,能知道的往往是一堆元数据,我们的做法是研究数据,对数据进行函数的拟合,看已经学习过的函数中的哪一类的拟合效果最贴近实际问题,从而确定最优的函数解析式。......
  • 大二打卡(11.15)
    今天做了什么:今天周三,上午一节英语课,今天除了上次的听写成绩不太满意,其他的课上表现都感觉有了高中时候的热情,继续保持下午孟老师开会,随机点了个名就点到我了,我还去的晚了,虽然没迟到,但是真倒霉晚上把uml报告搞定了,得劲今天遇到什么问题:英语还得给劲,建民的测试练了一会儿,对于......
  • 2023/11/15 NOIP 模拟赛
    T1游戏标签尺取线段树单调队列线段树进阶思路抽象题意,相当于有\(t\)个点,有\(n\)个下接\(x\)轴的矩形。首先明显可以按照\(c\)排序,然后尺取。写法线段树记录每区间内未被覆盖的最大高度。因为插入和删除的顺序相对不变,一个单调队列维护该区间内矩形高度即可,若......
  • bcmath相关函数使用
    ubuntu 安装bcmath插件sudoapt-getinstallphp7.0-bcmathcentos安装yuminstallphp72w-bcmathwindows版本的php自带,无需另外安装函数的使用//bcscale—设置所有bc数学函数的默认小数点保留位数bcscale(3);//返回布尔型true不指定位数,下面默认为保留小数3位$a='6......
  • 直接对函数传递指针
    首先来看一看这个代码这个代码输出的是2,即函数里面的c的值就是b的值,为主函数里面a这个变量的地址,所以a被改变了再来看一看这个代码这个代码输出的是1,就是b所指向的地址的内容没有被修改,所以c也是一个形参,他的值就是b的值(a的地址),但是c的值被改变了(变成了全局变量x的地址)不会导......