JS 如何在语句块中声明没有词法作用域的变量和函数?

2023-12-15

var a; 
{
  function a() {}
  a = 60;
  console.log('1: ', a);
}
console.log('2: ', a);

var b; 
{
  b = 60;

  function b() {}
  console.log('3: ', b);
}
console.log('4: ', b);

输出是:

1: 60
2: f a() {}
3: 60
4: 60

我不明白为什么,如果我去掉大括号,它就会全部打印出来60。也许是因为吊装。但据我所知,函数声明没有词法作用域,即使有,第一个输出也应该打印该函数,对吧?


None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JS 如何在语句块中声明没有词法作用域的变量和函数? 的相关文章

  • 关联数组不按顺序排列

    关联数组的顺序是这样的 A00 gt value1 A01 gt value2 B01 gt value3 B02 gt value4 但是在 for 循环之后数组顺序不起作用 for var key in obj3 code list1
  • 按属性首字母对对象数组进行分组

    我对此有点挣扎 自从我编码 JavaScript 以来已经有一段时间了 试图转换它 items data name john name james name joe name brian name bojan name billy name
  • scrollTop 在 Chrome 中不起作用,建议的解决方法也不起作用

    许多其他问题 here https stackoverflow com questions 2544979 is there a problem with scrolltop in chrome here https stackoverfl
  • 隐藏加载失败的图片

    我有一个 Android 应用程序 它生成一些在本地 Webkit 视图中呈现的 HTML HTML 生成的细节实际上并不那么重要 除了 大部分来自一个地方 我无法改变它 HTML 周围的模板 包括页眉 页脚 HEAD 等 CSS 和 Ja
  • 如何向 DOM 添加支持 Angular 的元素?

    我想以编程方式添加一些支持 Angular 的 DOM 元素 实际上 我可能需要添加自定义组件 我该怎么做 这是一个简单的小提琴来演示这个问题 http jsfiddle net ZJSz4 2 http jsfiddle net ZJSz
  • img设置flex-grow来填充flex容器剩余空间,它会导致flex内部溢出flex容器[重复]

    这个问题在这里已经有答案了 以下是我的代码 text1 溢出 Flex 容器 我期望 Flex 容器中的 img 文本和 img 填充 Flex 容器其余部分
  • 添加/更改 URL 参数并重定向到新 URL

    If the view allURL 中不存在参数 我需要将其与值一起添加到 URL 的末尾 如果它确实存在 那么我需要能够仅更改该值而不创建新的 URL 因为它之前可能有也可能没有其他参数 我找到了这个功能 但我无法让它工作 https
  • 创建一个通用函数以将其用于其他数据

    我正在制作一个项目列表 并希望随着数量变化计算其值 但如何使该函数通用以便我可以将它用于所有行 你能建议一些最好和简单的方法 但请记住我想这样做仅限 JavaScript table thead tr th Name th th Quant
  • 如何从 HTML 图表中删除网址 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在 HTML 中创建一个图表 我正在使用 API amCharts 但问题是它在图表中显示文本 amchart 我怎样才能删除该文本
  • 如何将多种语言设置放入单个 .clang-format 文件中

    我想为 java javascript 和 c 创建一个 clang 格式 我知道如何转储单一语言的示例配置 但不知道如何合并这 3 个配置文件 有关如何将多种语言配置放入单个文件中的示例 BasedOnStyle LLVM IndentW
  • 用角度js中的字母过滤列表

    我在表格中显示了一个列表 我需要使用名称的第一个字母来过滤结果 在列表上方我有一个字母 A B C D 等等 单击后 字母列表将按名字过滤 例如 列表详细信息是Apple Boy Bridge点击后A Apple将显示 我必须过滤国家名称以
  • Mapbox 关闭除一层之外的所有图层

    我是 Mapbox 和 javascript 的新手 我试图稍微修改一下 Mapbox GL 代码示例 发现here https www mapbox com mapbox gl js example toggle layers 允许打开
  • 静态资源和非静态资源有什么区别?

    我主要是一名前端开发人员 设计师 但最近我一直在探索端到端解决方案 昨天 我使用平均堆栈完成了一个 TODO 应用程序 并想开始探索我的 VPS 的部署选项 话虽这么说 有人建议我使用 nginx 作为反向代理来提供静态资源 不幸的是 我陷
  • Vue js - 在同一级别的两个组件内传递数据

    我有需要从一个传递的数据component1到另一个component2 我不使用vuex or router 组件树 Parent Component1 Component2 从一开始component1我发出 ajax 请求 检索信息并
  • 以编程方式访问使用数据 URI 作为源的 iframe

    我正在使用 数据 URI 以编程方式创建一个 iframe 该框架加载良好 但似乎以编程方式使用 iframe 会遇到跨域安全检查 var iframeDoc document getElementById myFrame contentW
  • codemirror - 在编辑器内检测并创建链接

    我正在使用 codemirror 配置为显示 javascript 我有这样的代码 var ref http www example com test html var ref2 http www example com test2 htm
  • 返回语句后的声明

    function f return f1 function f1 return 5 f returns 5 为什么这有效 之后声明局部函数有什么好处return 这是好的做法吗 它之所以有效 是因为函数声明都是由解释器在第一次传递时评估的
  • 使用与 eval 相反的括号表示法

    我有以下内容 var module function console log module ran var someString module string TypeError object is not a function eval s
  • Google Maps JavaScript API v3 方向功能

    我使用 Google Maps js API v3 我可以根据路径点显示方向this http code google com intl hu apis maps documentation directions Waypoints 我想要
  • 未终止的字符串文字

    我有一个 php 脚本 可以在我的服务器上上传 mp3 文件 我使用 上传 有一个事件 onSelect 文档 http www uploadify com documentation events onselect 当文件上传时调用 使用

随机推荐

  • Microsoft Edge 中的 ActiveX 是否有替代方案?

    微软已经发布了Edge浏览器 该浏览器不支持ActiveX 我有一个应用程序需要从 Windows 注册表获取信息 因此我对 ActiveX 的替代方案有一些疑问 有没有办法从 Edge 或类似的东西 例如 Chrome 中的本机消息传递
  • jquery 在点击时或 10 秒后重定向

    我的网站上有一个闪屏 其中有一个 ID 为 splash 的 div 我试图让 div 淡入 然后如果用户单击该 div 它就会淡出并重定向到主站点 如果用户没有点击 它就会淡出并在 10 秒后重定向 定时重定向有效 但点击功能无效
  • 相当于IE中的text-shadow

    我的CSS中有这个 body transparent background color transparent color ffffff text shadow 0 1px 000 1px 0 000 0 1px 000 1px 0 000
  • 在真实设备上选取 PDF 时,iOS 文档选取器崩溃

    我尝试为我的 iOS 应用程序创建一个文档选择器 这是我的代码 我将 UIDocumentPickerViewController 包装在我的 SwiftUI 视图中 并使用 UIViewControllerRepresentable im
  • Awk/Bash 将数字从行首移动到行尾

    我想将数字 数字字符串从行首移动到行尾 输入示例 123example 321example 34292example 预期输出 example123 example321 example34292 GNU awk 的match函数可以完成
  • 如何在 Java EE 环境(Tomcat + JSF)中调整 persistence.xml 文件以将 JPA 连接到 JDBC/MySQL 数据库

    我正在使用 JSF PrimeFaces JPA 开发一个动态 Web 项目 Java EE 并在 Tomcat 7 上运行 项目开发基于http www simtay com simple crud web application wit
  • MFMailComposeViewControllerDelegate 未被调用

    我意识到这个问题已经被不准确地问过 但我一直无法找到我的问题的答案 我有一个带有静态单元格的 UITableViewController 其中一个单元格用于打开邮件编辑器视图 并在用户发送或取消电子邮件后通过委托将其关闭 我的问题是委托方法
  • 单击相同的发布版本但程序集版本不同,更新没有发生

    我部署了一个 clickonce 应用程序 在我的应用程序中我有 10 个外部 dll 由于我的 dll 文件中的代码不断变化并且很难重新分发 因此我采用了 clickonce 部署策略 但我想知道一件事 如果我更改其中一个 dll 文件并
  • printf 在 C 中给我错误的输出

    这可能是一个非常基本的问题 但我在任何地方都找不到答案 这是我在用 C 编程几周后第一次遇到这个问题 本质上 如果我编写一些看起来像这样的代码 int size scanf d size printf size is d size 如果我输
  • 有人可以解释一下 exynos ARM 中的电源控制寄存器吗?

    在Linux内核中 更准确地说 arch arm mach exynos cpuidle c在 3 9 rc6 上 该行显示 static unsigned int g pwr ctrl g diag reg static void sav
  • Google Cloud Vision API 是否检测 OCRed 文本中的格式,例如粗体、斜体、字体名称(helvetica 或 times new roman)等?

    快的brown狐狸跳over懒狗 在这种情况下 假设也有不同的字体系列 云视觉 API 是否可以检测到这一点 或者任何其他 OCR API 都能清楚地检测到这一点 Tesseract 有能力 但它非常不准确 谷歌云视觉 API 是否检测 O
  • 单击通知区域中的消息时未打开应用程序

    我正在开发一个可与推送通知配合使用的 Worklight 应用程序 我目前正在 Android 上进行测试 并已获得适配器来向应用程序发送推送通知 问题是 应用程序仅在前台时接收它 如果它在后台 它不会收到它 并且我在通知区域显示消息后打开
  • C++ 随机 int 函数

    大家好 亲爱的 stackoverflow 会员 我最近开始学习 C 今天我写了一个小游戏 但我的随机函数无法正常工作 当我多次调用随机函数时 它不会重新生成数字 而是一遍又一遍地打印相同的数字 不使用for循环如何解决这个问题 谢谢 in
  • 前缀和后缀运算符有什么区别?

    以下代码打印值 9 为什么 这里return i 将返回值 11 并且由于 i该值本身应该是 10 谁能解释这是如何工作的 include
  • Java 中哈希集作为构造函数参数

    有什么方法可以声明构造函数将 HashSet 作为参数之一 然后在对象初始化期间直接将 HashSet 值作为参数传递 我的意思是这样的 public class Order private Set
  • word 中前一个标题的文本

    给定Word中的任何选定单词或段落 有没有办法使用VBA查找最近的前面标题的文本 例如 标题级别 1 主标题 这是关于该文档的一段 A 2 级标题 副标题 这一段描述了一个细节 B 如果选择 B 的任何部分 我想找到 A Sub Title
  • 为特定用户单独显示和隐藏谷歌表格

    我正在为我的团队成员制作一个谷歌电子表格 他们可以在其中保存他们的日志 所以我为他们每个人制作了一张单独的表格 但由于某些隐私原因 我不想让他们看到彼此的日志 我使用应用程序脚本隐藏工作表 并将它们与用户的电子邮件地址相关联 但是 当任何用
  • 将按钮插入 JFreeChart 图形中

    我使用代码来显示图表 我想在此图中插入一个按钮 显示详细信息 我将使用该按钮来显示有关该图的一些详细信息 它可以实现吗 谢谢 if jCheckBox3 isSelected try con getConnection jdbc mysql
  • 不使用keras后端库的自定义损失函数

    我正在将 ML 模型应用于实验设置以优化驱动信号 驱动信号本身是被优化的东西 但它的质量是间接评估的 它被应用于实验装置以产生不同的信号 我能够通过 python 中的函数运行实验并收集数据 我想设置一个带有自定义损失函数的 ML 模型 该
  • JS 如何在语句块中声明没有词法作用域的变量和函数?

    var a function a a 60 console log 1 a console log 2 a var b b 60 function b console log 3 b console log 4 b 输出是 1 60 2 f