在 JavaScript 中提升变量

2024-03-07

据我了解,变量提升是在 Java 脚本中完成的。我无法理解为什么它输出为未定义

 do_something()
    {
    var foo = 2;    
    console.log(foo);   
    } do_something()  // it prints 2

 do_something()
     {        
     console.log(foo);  var foo = 2;  
     } do_something()  // it prints undefined

当 javascript 提升第二个函数时,根据我的理解,第二个函数也应该打印 2。购买为什么不呢


这就是解释器如何看待你的代码,

do_something() {
 var foo;
 console.log(foo); // undefined
 foo = 2;
}

do_something();

所以正在打印undefined。这是变量提升的基础。您的声明将移至顶部,而您的分配将保留在同一位置。当你使用时情况有所不同let over var.

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

在 JavaScript 中提升变量 的相关文章

随机推荐

  • 如何在 MySQL 5.7 中创建六字符密码

    我需要在 Mac 上的新 MySQL 中创建一个具有六字符密码的用户 我知道 5 7 中的最低设置只允许八个字符 有什么办法可以解决这个问题吗 我输入CREATE USER newsier localhost IDENTIFIED BY s
  • 如何从mysql获取分层菜单

    我有一个带有分层菜单的表 例如 id parent id name 1 0 menu 2 1 item1 3 2 item1 1 4 1 item2 5 4 item2 1 我这里有数百个菜单项 为了获取数组中的所有项目 我必须编写一个像这
  • 更改 Firebase 实时数据库中的值时如何查看 flutter 应用程序的变化?

    每当我在 Firebase 实时数据库中进行任何更改时 我都会尝试使这些滚动开关更改其值 更具体地说 每当我将 Relay1 Data 的值更改为 0 时 我希望该开关变为非活动状态 我已经尝试并到处寻找 但找不到任何解决方案 bool r
  • 在本地主机上运行的 asp.net 应用程序上使用 https

    我创建了一个 asp net Web 应用程序 其中包含一个名为 Main aspx 的 Web 表单 我正在尝试通过 https 运行该应用程序 由于我没有 SSL IIS 等方面的经验 我在 google 上搜索了如何实现这一目标 但每
  • 如何通过Windows Defender SmartScreen保护? [复制]

    这个问题在这里已经有答案了 我试图防止我的应用程序 安装程序 不会被阻止Windows 智能屏幕保护 我使用 BitRock 并手动签署了我的安装程序 但我总是遇到这个问题 我购买了有效的证书 并且带有时间戳的签名没问题 这是一个商业应用程
  • HTTP 中的 POST 和 PUT 有什么区别?

    背景资料分析 根据RFC 2616 第 9 5 节 https www rfc editor org rfc rfc2616 section 9 5 POST习惯于create资源 POST 方法用于请求源服务器接受请求中包含的实体 作为请
  • 如何从 Base64 编码字符串构造 java.security.PublicKey 对象?

    我有一个来自外部源 Android Store 的 bse64 编码字符串公钥 我需要用它来验证签名内容 如何将字符串转换为 java security PublicKey 接口的实例 如果这有什么区别的话 我正在使用 Java 6 密钥
  • Cocos2d-x:可以使用HTML(UIWebView)吗?

    我正在尝试cocos2d x现在我可以为 Android 构建 Javascript 示例并在浏览器中运行它们 现在我想创建自己的游戏 但由于有 HTML 背景 我宁愿使用 HTML 标签和 CSS 也不愿使用 Javascript 来设置
  • PHPExcel 检查工作表是否存在

    我正在使用 phpExcel 但找不到任何内容来检查工作表是否存在 我想要完成的是这样的事情 if excel gt sheetExists 1 excel gt createSheet 1 sheet excel gt setSheet
  • syscall_table 在 x86_64 内核中的什么位置?

    我正在尝试向 Linux 内核 x86 64 添加新的系统调用 基于本文 http techeclipse com how to linux kernel 其中解释了如何将系统调用添加到内核 x86 该文章说我需要在名为的文件中定义我的系统
  • 警告“演示正在进行时!”的含义

    当我整合Instagram在我的项目中 我得到了image from UIImagePickerController之后我想把它发送到Instagram但是当我发送时image to Instagram by UIDocumentInter
  • 将自定义域映射到 openshift wordpress 博客

    我有一个 openshift wordpress 博客 运行在http blog example rhcloud com http blog example rhcloud com 并在我的 DNS 管理中添加 CNAME 记录 如下所示
  • 我如何知道训练数据足以用于机器学习

    例如 如果我想训练一个分类器 也许是SVM 我需要收集多少样本 有没有一个测量方法呢 知道需要收集多少样本并不容易 不过 您可以按照以下步骤操作 解决典型的机器学习问题 构建一个包含几个样本的数据集 a 有多少个 这取决于您遇到的问题类型
  • 在增量搜索 JS 中设置突出显示文本的样式

    第一个 StackOverflow 问题 哇 关于这段 Javascript 样式的简单问题 Search search keydown function e setTimeout function if search val histor
  • JAVA 中的 PIG UDF 错误 1070

    我创造了UDF UPPER jar文件输入 home GED385 pigScripts GED385 snshadoope1 pigScripts jar tf home GED385 pigScripts UDF UPPER jar g
  • 如何使用 intersphinx 正确链接到 PyQt5 文档?

    我在尝试链接到时遇到了一些麻烦PyQt5 文档 http pyqt sourceforge net Docs PyQt5 using intersphinx 尝试交叉引用任何QtCore类 例如QThread 没有像我预期的那样工作 我已经
  • 在 Elasticsearch 中插入多个文档 - 批量文档格式化程序

    太长了 如何批量格式化 JSON 文件以摄取到 Elasticsearch 我正在尝试将一些 NOAA 数据提取到 Elasticsearch 中并一直在利用NOAA Python SDK https github com paulokuo
  • VS 2013可以安装在Server 2003 R2上吗

    我可以在 Windows Server 2003 R2 上安装 Visual Studio 2013 吗 根据 Visual Studio 2013系统要求 http www visualstudio com en us products
  • 我该如何将 HOME 键绑定为 tmux 前缀?

    有没有办法在 tmux conf 中执行此操作 如果其他一切都配置正确 那么应该很简单 只需将其放入您的 tmux conf set option g prefix Home 注意 除非您手动 获取 您的 tmux conf 对文件的更改仅
  • 在 JavaScript 中提升变量

    据我了解 变量提升是在 Java 脚本中完成的 我无法理解为什么它输出为未定义 do something var foo 2 console log foo do something it prints 2 do something con