javascript中变量和常量以及作用域和块作用域的案例
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>js03-变量和常量以及作用域和块作用域的案例</title>
<script type="text/javascript">
var aa, bb;
console.log(aa, bb);
//
var cc = 66;
console.log(cc);
console.log(cc);
cc = 88;
console.log(cc);
var cc = 99;
console.log(cc);
//
const PI = 3.14;
console.log(PI);
//
console.log("dd = " + dd);
var dd = 98;
//
console.log(ee);
console.log(ff);
function ff(){}
var ee = 28;
console.log(ee);
console.log(ff);
//
var hh = 889900;
console.log(hh);
var hh;
console.log(hh);
hh = 33606;
console.log(hh);
//
var hi;
console.log(hi);
hi = 99345;
console.log(hi);
//变量支持声明前置
console.log("ha = " + ha);
var ha;
ha = 668899;
console.log("ha = " + ha);
//变量支持声明前置
//不会报错,不会报hometown is not defined
console.log("hometown = " + hometown);//结果为hometown = undefined
var hometown = "江西省赣州市于都县";
//故意打印一个没有声明的变量
// console.log(address); //报错ReferenceError: address is not defined
//常量不支持声明前置
//报错ReferenceError: can't access lexical declaration `G' before initialization
// console.log("G = " + G);
// const G = 9.8;
//常量是一个块作用域
if(true) {
const COLOR = 'red';
}
//ReferenceError: COLOR is not defined
// console.log(COLOR);
//变量的作用域,不是块作用域
if (true) {
for (var myIndex = 0; myIndex < 3; myIndex++) {
var aaaa = "于都县";
console.log("$$$$$$$$$$$$$$$$" + myIndex);
}
var ttt = "我老家在江西省赣州市于都县渡江大道6666666号";
console.log("//" + ttt);
}
console.log("¥¥¥¥¥¥¥¥¥¥¥¥¥¥" + myIndex); //结果为3
myIndex = 1378866;
console.log("&&&&&&&&&&&&&&&&&&" + myIndex); //结果为1378866
console.log("@@@@@@@@@@@@@@@@@@" + ttt);
console.log("aaaa = " + aaaa);
//js中的块作用域知识点(参考网页https://blog.csdn.net/czh500/article/details/100024940)
function counting(count) {
for (var i = 0; i < count; i++) {
console.log("*******" + i);
}
/*
i在for循环的时候没有被销毁而是保留了下来,按照专业的术语来讲,就是没有所谓的块作用域!
*/
console.log("-------" + i); //是否出错?
}
counting(3);
//js中的块作用域知识点
function myFun(count) {
for (var index = 0; index < count; index++) {
console.log("#######" + index);
}
//index这个变量的作用域似乎是在整个myFun()函数中
console.log("!!!!!" + index); //出了for循环,外面依然能访问到index这个变量
index = 6899; //甚至可以给index这个变量赋值
console.log("=====" + index);
}
myFun(3);
</script>
</head>
<body>
<h1>js03-变量和常量以及作用域和块作用域的案例</h1>
</body>
</html>