
一、变量的声明和赋值
1、变量声明
float f; // 声明一个浮点类型的变量
int i; // 声明一个整数类型的变量
// 语法: var 变量名;
var zhishunet;
// 我们也可以使用逗号(,)一次性定义多个变量
var zhishunet, zhishuseo, zhishu
// 对于未声明的变量赋值时,变量就成为全局变量了
<script>
zhishunet = "www.zhishunet.com"
alert(zhishunet); // 输出 www.zhishunet.com
</script>
2、变量赋值
// 变量相当于容器,它的主要功能就是存储和读取,在JS中使用等号 “=” 运算符为变量赋值
// 语法: 变量名 = 数据值;
zhishunet = "www.zhishunet.com"
// 还有就是在声明变量的同时为变量赋值,将声明和赋值步骤合并为一行
// 语法: var 变量名 = 数据值;
var zhishunet = "www.zhishunet.com"
// 当多次对同一变量赋值时,相当于对该变量德的值进行重写
var zhishu = "www.zhishunet.com"
document.write(zhishu);
zhishu = "www.zhishunet.cn"
document.write(zhishu);
二、变量提升
// 变量提升又称为声明提前 举个例子:
var zhishu = "zhishunet"
var zhishu = "zhishuseo"
// 上面的例子就是在一个脚本中两次声明变量,但是js中所有全局变量的声明都会提升到脚本执行之前,而赋值操作会保留在原位置,上面代码解析步骤为:
var zhishu;
zhishu = "zhishuent";
zhishu = "zhishuseo";
三、全局变量和局部变量
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>知数SEO_专注搜索引擎优化和品牌推广</title>
</head>
<body>
<script>
var url = "www.zhishunet.com";
function demo(){
var zhishunet = "www.zhishuseo.cn"
document.write('<h2>',url,'</h2>');
document.write('<h2>',zhishunet,'</h2>');
}
demo();
document.write('<h2>',url,'</h2>');
document.write('<h2>',zhishunet,'</h2>');
</script>
</body>
</html>

四、变量的命名规则
五、ES6新特性的局部变量
1、let关键字的基本使用
// 语法:let 变量名
let zhishunet;
// let 和 var 的语法格式相同,但let关键字实现了功能的专一性和单一性,它为局部变量而生,但是在全局作用域内依然可以使用(坑)
function demo(){
let url = "www.zhishunet.com";
}
2、区块作用域
// 区块作用域使用方法是用大括号{}为局部作用域定界,let和区块作用域结合可增强代码的可读性和维护性
{
let url = "www.zhishunet.com";
}
alert(url); // 没输出 因为是局部变量
3、关键字let和var的区别
// 1、、没有变量提升
// 2、不能重复声明
// 使用var声明过的变量不能再次使用let声明,使用let声明过的变量也不能再次使用var或let声明
let和var声明方式的区别
关键字 | var | let |
---|
作用域 | 全局或局部作用域 | 局部作用域 |
是否可以重复声明 | 可以 | 不可以 |
是否可以重复赋值 | 可以 | 可以 |
是否有变量提升 | 可以 | 不可以 |
六、ES6新特性的局部变量
// 注意:常量一旦被赋值就不能被重新赋值,一旦定义则无法修改
const SITE = "www.zhishunet.com";
document.write('<h2>',SITE,'</h2>');
// const可以在局部作用域中声明,可以成为局部变量,局部变量不能在局部作用域之外使用
// 常量没有变量提升效果、不能被重复声明、不能被重新赋值、
常量声明注意事项
关键字 | const |
---|
作用域 | 全局或局部作用域 |
是否可以重复声明 | 同一作用域下不能 |
是否可以重复赋值 | 不能 |
是否有变量提升 | 不能 |
七、ES6新特性的解构赋值
// 数组和对象都能在单个变量中存储多个数据值,如
[1,2,3]; // 包含三个元素的数组
// ES6 可以这样赋值
var [a,b,c] = [1,2,3];
// 之前的写法
var a = 1;
var b = 2;
var c = 3;
// 除了var关键字之外,let const关键字同样适用于解构