var x = 5; // 初始化 x

elem = document.getElementById("demo"); // 查找元素
elem.innerHTML = x + " " + y;           // 显示 x 和 yvar y = 7; // 初始化 y

y 输出了 undefined,这是因为变量声明 (var y) 提升了,但是初始化(y = 7) 并不会提升,所以 y 变量是一个未定义的变量。

实例 2 类似以下代码:

var x = 5; // 初始化 x var y; // 声明 y elem = document.getElementById("demo"); // 查找元素 elem.innerHTML = x + " " + y; // 显示 x 和 y y = 7; // 设置 y 为 7

转载于:https://www.cnblogs.com/RonnieQin/p/9015056.html

js 变量的声明能提升 初始化不会提升相关推荐

  1. 前端:JS/16/JavaScript简介,lt;script标记,常用的两个客户端输出方法,JS注释,JS变量(声明,命名规则,赋值),变量的数据类型(数值型,字符型)

    JavaScript简介 1,JavaScript是什么? JavaScript是一种小型的,轻量级的,面向对象的,跨平台的客户端脚本语言. JavaScript是嵌入到浏览器软件当中去的,只要你的电 ...

  2. [Javascript学习笔记]JS变量不声明也能使用,直接天下无敌!

    认识变量 什么是变量 变量 变量的输入与输出 同时声明多个变量 声明变量特殊情况 变量命名规范 什么是变量 本质:变量是程序在内存中申请的一块用来存放数据的空间. 变量 变量的输入与输出 <!D ...

  3. JS变量(声明)提升和函数声明提升

    目录 一.概念理解 1.变量声明提升 2.函数声明提升(又叫函数提升) 变量提升和函数提升的优先级 小结: 一.概念理解 变量提升:在当前作用于中,js代码自上而下执行之前,浏览器会把所有带var/f ...

  4. js变量后面加问号是什么_JS变量生命周期:为什么 let 没有被提升

    译者:前端小智 原文:https://dmitripavlutin.com/variables-lifecycle-and-why-let-is-not-hoisted/ 为了保证的可读性,本文采用意 ...

  5. php声明js变量类型,js中变量是什么以及有哪些类型

    在js中,变量是存储信息的容器:JavaScript中有两种类型的变量:局部变量和全局变量. js如何声明变量? 在js中,可以使用关键词"var"或者"let" ...

  6. php变量和js变量的区别吗,JS声明变量的3种方式和区别

    JavaScript 是弱类型语言,可以不需要声明变量而直接使用.这样虽然简单但不易发现变量名方面的错误,所以不建议这样做.通常的做法是在使用 JavaScript 变量前先声明变量.目前,JavaS ...

  7. js变量提升hoisting

    作用域(Scoping) 什么是作用域? 我对作用域的理解是只会对某个范围产生作用,而不会对外产生影响的封闭空间.在这样的一些空间里,外部不能访问内部变量,但内部可以访问外部变量. c语言的变量分为全 ...

  8. js 变量、函数提升

    js 变量.函数提升 先简单理解下作用域的概念,方便对变量与函数提升的概念的理解 function foo() {var x = 1;if (x) {var x = 2;}console.log(x) ...

  9. js变量提升_学习笔记:JS中的作用域和预解析

    知识总结:谢静贤.汤昊 在javascript中作用域是非常重要的,本文将会说明作用域以及我们在工作,以及面试中的一些面试题,如果有不足的地方希望大家可以评论指出来,自己一定会及时的改正错误,避免大家 ...

最新文章

  1. CentOS各版本ISO下载地址
  2. 机器视觉_Java机器学习,第2部分
  3. 【深入Java虚拟机JVM 09】JVM垃圾回收finalize方法--对象最有一次自我拯救
  4. shell从小做起:将100以内整除3的数列出来
  5. Boolan STL 第三周笔记
  6. 服务器查内存型号,服务器怎样查内存型号
  7. 三菱基于雷诺平台推全新跑车 搭1.1T引擎
  8. c# 获取键盘的输入
  9. 只能建立两个虚拟服务器,创建两个虚拟主机
  10. 前端面试宝典-技巧篇
  11. 从《色戒》,看人性的欲望
  12. jQuery treeTable
  13. gg修改器怎么修改服务器数值,gg修改器怎么修改数值 | 手游网游页游攻略大全...
  14. 上网篇:USB网络共享
  15. 树形表实现 bootstrap-table + treegrid
  16. Invalid bound statement (not found): com.xx.dao.TypeMapper.selectAll
  17. 企业架构TOGAF介绍
  18. ArcGISPro加载在线底图和影像
  19. ES6的Lambda表达式
  20. linux移动硬盘直接拔掉,安全弹出后就拔掉移动硬盘,真的安全吗?

热门文章

  1. 《Essential C++》笔记之关联容器set的使用总结
  2. php实现数据排序算法,PHP实现数据结构中的排序算法_PHP教程
  3. java web环境_java web
  4. typescript 判断异步执行已经结束_vue进阶系列——用typescript玩转vue和vuex
  5. python多分类画roc曲线_利用python制作ROC曲线进行多分类
  6. MACAPP中引入ffmpeg库完成具体功能
  7. win32 sdk C语言菜单,win32 sdk 设定/获取checkbox控件状态
  8. oracle数字日期43841怎么转,安装0racle已崩溃,求助大佬
  9. java websocket 生存期_Java WebSocket生命周期
  10. numpy多元线性回归_使用sklearn实现多元线性回归