JavaScript变量、运算
【摘要】
目录
一,变量声明,undefined
二,typeof 运算符
三,运算法则
四,var、作用域
五,let
六,重复声明
七,变量提升 Hoisting
一,变量声明,undefined
JS中,变量通常通过var声明,类型是动态类型。
如果只声明不初始化,那么初始值就是undefined这个特殊的值...
目录
一,变量声明,undefined
JS中,变量通常通过var声明,类型是动态类型。
如果只声明不初始化,那么初始值就是undefined这个特殊的值。
和C语言一样,变量可以声明的同时进行初始化。
非严格模式下,var还可以省略掉,即默认的声明方式是var而不是let
二,typeof 运算符
typeof可以给出一个变量的类型
如果是undefined,类型就是undefined
如果变量不存在,类型也是undefined
三,运算法则
JS的常规运算和C语言一样,但是JS的运算还包括了动态类型推导。
-
<p id="demo"></p>
-
-
<script>
-
x = "8" + 3 + 5;
-
document.getElementById("demo").innerHTML = x;
-
</script>
结果是835
-
<p id="demo"></p>
-
-
<script>
-
var x = 3 + 5 + "8"
-
document.getElementById("demo").innerHTML = x;
-
</script>
结果是88
四,var、作用域
通常用var声明变量。
在函数外声明的变量有全局作用域,在函数内声明的变量有局部作用域(函数作用域)。
var 可以多次声明变量
-
<p id="demo"></p>
-
-
<script>
-
var carName = "porsche";
-
var carName;
-
document.getElementById("demo").innerHTML = carName;
-
</script>
多次声明并初始化也是可以的
-
<p id="demo"></p>
-
-
<script>
-
var x = 2;
-
// 此时 x 是 2
-
-
var x = 3;
-
// 此时 x 是 3
-
-
document.getElementById("demo").innerHTML = x;
-
</script>
五,let
使用let声明的变量,具有块作用域。
和var一样,可以先声明再初始化,也可以声明并初始化
-
<p id="demo"></p>
-
-
<script>
-
let carName
-
carName = 123
-
document.getElementById("demo").innerHTML = carName;
-
</script>
或者
-
<p id="demo"></p>
-
-
<script>
-
let carName = 123
-
document.getElementById("demo").innerHTML = carName;
-
</script>
六,重复声明
在相同的块中,先后2次声明一个变量(无论有没有初始化),只能先var再var,
另外三种都不行(先var再let,先let再let,先let再var)
七,变量提升 Hoisting
通过 var 声明的变量会提升到顶端,也就是说可以先使用再声明。
let声明的变量不能提升。
文章来源: blog.csdn.net,作者:csuzhucong,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/nameofcsdn/article/details/120619817
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)