函数作用域,闭包,数据类型的题目
第一题:函数作用域和闭包
var a = 9 function fn(){a = 0return function (b){return b+a++} } var f = fn() console.log(f(5)) console.log(fn()(5)) console.log(f(5)) console.log(a)
这题要注意函数中的a是隐式全局变量,要注意下这个隐式全局变量在什么时候执行,返回的函数b并不需要执行 a = 0,a++是在执行过之后让a+1
所以但答案是:
5 5 6 2
第二题:关于数据类型传值和传址
var ary = [1,2,3,4] function fn(ary){ary[0] = 0ary = [0]ary[0] = 100return ary } var res = fn(ary) console.log(ary) console.log(res)
形参和实参要注意区分一下,他们两人之间没有直接的关系,但是有间接的关系
答案是
[0, 2, 3, 4] [100]
转载于:https://www.cnblogs.com/xufeng1994/p/10444746.html
函数作用域,闭包,数据类型的题目相关推荐
- python中func自定义函数_Python函数之自定义函数作用域闭包
一 前言 1.1 为什么要用函数 代码的组织结构更清晰,可读性好: 遇到重复的功能不需要重新编写代码,调用函数即可,代码不会冗余: 功能需要扩展时,只需要修改函数内容即可,实现统一管理,降低代码维护难 ...
- python函数作用域与闭包_python基础-08-内置函数、作用域、闭包、递归
python基础-内置函数.作用域.闭包.递归 1.常见的内置函数 常见的内置函数: 查看内置函数: print(dir(__builtins__)) 常见函数 type() 数据类型 print() ...
- javascript函数作用域与闭包
8.8. 函数作用域与闭包 如第四章所述,JavaScript函数的函数体在局部作用域中执行,局部作用域不同于全局作用域.本章将解释这些内容和相关的作用域问题,包括闭包.[*] [*] ...
- 一文搞懂:词法作用域、动态作用域、回调函数、闭包
把以前一直只限于知道,却不清晰理解的这几个概念完完整整地梳理了一番.内容参考自wiki页面,然后加上自己一些理解. 词法作用域和动态作用域 不管什么语言,我们总要学习作用域(或生命周期)的概念,比如常 ...
- python函数作用域与闭包_python函数名称空间与作用域、闭包
一.命名空间概念 1.命名空间(name space) 名称空间是存放名字的地方. 若变量x=1,1存放在内存中,命名空间是存放名字x.x与1绑定关系的地方. 2.名称空间加载顺序 python te ...
- 作用域、变量提升、函数提升、数据类型
一.作用域分类 (作用域范围内定义的变量,整个作用域都可以访问) 1. 全局作用域 使用var声明(或者不严格模式下没有声明)且在函数外定义的变量,其作用域范围是全局的,称其为全局作用域. 2. 函数 ...
- python 3.28 第三章 函数嵌套/名称空间//内置名称空间/全局名称空间/局部名称空间/作用域/函数对象/闭包函数。...
1 函数嵌套: 函数内可以调用了其他的函数. # def max2(x,y):# if x > y:# return x# else:# return y## def max3(x,y,z):# ...
- Javascript读书笔记(六)函数作用域,声明提前,作用域链,闭包
参照内容来自<JavaScript权威指南>,<JavaScript高级程序设计> 函数作用域 类似C语言的编程语言中有块级作用域,JavaScript中没有块级作用域,取而代 ...
- 《JavaScript忍者秘籍》(第二版)- 第5章 -精通函数:闭包和作用域
目录 第5章 精通函数:闭包和作用域 5.1 理解闭包 5.2 使用闭包 5.2.1 封装私有变量 5.2.2 回调函数 5.3 通过执行上下文来跟踪代码 5.4 使用词法环境跟踪变量的作用域 5.4 ...
最新文章
- Hashtable,HashMap,ConcurrentHashMap都是Map的实现类,它们在处理null值的存储上有细微的区别,下列哪些说法是正确的
- Codeforces Round #649 (Div. 2)C. Ehab and Prefix MEXs[排列的构造]
- Linux umount 报 device is busy 的处理方法
- 在ASP.NET AJAX中使用应用程序服务和本地化(3):用户个性化组件ProfileService
- grunt的学习和使用
- Linux的实际操作:时间日期类的实用指令(date cal)
- android动画文档,Android 动画系统汇总
- “Found interface com.mysql.jdbc.Connection, but class was expected ”
- Mybatis系列全解(六):Mybatis最硬核的API你知道几个?
- 为了进大厂,我所经历的奇葩面试
- 深度强化学习(机器之心)
- 2021年高压电工考试技巧及高压电工模拟考试
- 康复期需注意什么?一组手账告诉你
- python flask自定义404错误页面
- uniapp连接蓝牙相关问题
- p2p网贷系统的架构设计
- 2022暑期杭电第八场
- HTML基础的回顾复习(基本标签,简单的一个登陆验证)
- 自动问答研究进展、现状及趋势
- JdbcTemplate DateTime转java.util.Date时区错误
热门文章
- lua如何判断是否支持cookie_我们应该如何判断机油是否变质?
- 四边形可以分为几类_四边形有几种类型
- linux系统是否支持gpt分区,Linux下进行GPT分区
- extmail mysql数据库 重启_centos 5.8 x86_64下安装mysql+postfix+extmail+extman+courier-authlib+courier-imap...
- linux安装oem环境,【OEM】 oem12c_install_for_linux
- 微星主板超频_微星垄断AMD、Intel平台内存超频记录 ITX小板惊人
- 获取授时时间_gps时间同步服务器在通信行业的解决方案
- 广数系统980tdb系统说明书_汽车离合操纵系统随车检测工具使用说明书
- 《系统集成项目管理工程师》必背100个知识点-49质量管理的流程
- 网络安全技术 —— 防火墙技术基础