Correcting teacher:天蓬老师
Correction status:qualified
Teacher's comments:
实例演示js常用数据类型,变量与常量的声明与赋值
1. 关于JS的变量和常量
传统声明变量的方式是通过 “var”来声明的。例如var name
,在传统的js中没有常量,开发者通过‘变量名’为全部大写的方式来声明一个常量,这是一种约定俗成的方式。这些都是在ES6版本之前。
在新的js版本中,通过“let”和“const”方式来声明变量和常量。这样可以严格区分其中的差异。
let username
username = '土豆';
username = "帅气的土豆";
let 声明的变量与传统var声明的变量有很大的不同是let声明的变量不能重复声明
声明变量是可以同步完成变量的初始化,也可以分开完成变量的初始化。只有第一次给变量赋值的步骤才叫变量初始化,之后给变量赋值叫变量更新。
关于常量
传统意义上的js是没有常量这个概念的,我们可以吧常量理解为一个不变的变量。常量是特殊的变量: 只读变量,常量声明后即不能删除,也不能更新
通过const
声明,例如const CHENGSHI = "福州";
如果给常量更新值的话就会出现错误
关于变量和常量的命名规范
常量,变量,函数名…都叫js标识符
1. 只能字母,数字,下划线,$,且第一个不能是数字
2. 标识符是严格区分大小写的
命名规范
js的数据类型分为两个大类:原始数据类型和应用数据类型
关于原始数据类型:
数值let age = 38;
字符串let email = 'tp@php.cn';
布尔值let isMarried = true;
空let obj = null;
关于值传递
原始类型都是值传递,将变量a中的值传递到b中,之后再更新a的值不会影响到b
<script>
let a = 66;
let b = a;
a = 70;
console.log(b);
</script>
关于应用类型
应用类型有对象、数组和函数
对象
let tudo = {
name: "土豆",
email: "45646@qq.com",
getName: function () {
return "我的名字:" + this.name;
},
};
console.log(tudo.getName());
数组
let course = [1, "js", 80];
console.log(course instanceof Array);
引用传递
引用传递是将被引用的参数的地址传递到需要引用的参数中。此时如果修改被引用的参数地址中的内容。也会影响到应用参数的内容
const arr = [1, 2, 3];
console.log(arr);
arr[1] = 888;
console.log(arr);
const arr1 = arr;
console.log(arr1);
arr[2] = "php.cn";
console.log(arr1);