变量与常量
1.变量
1.什么是变量
-
从数据的角度
- 在之前讲的编程的本质的第一步,数据的输入/定义/获取, 我们依旧拿百度举例
- 由于这个数据不是固定的,会变,因此我们把他叫做
变量 - 而当我们想使用这个
变量时,由于它是可变的,因此我们需要一个标记或者名字来替代/存储它,这个名字就叫做变量名
-
从生活角度
变量是用于存储信息的"容器"- 就像奶茶店想做奶茶,首先要准备一堆的原材料,把原材料放在不同的箱子,瓶子,罐子里
- 而这些箱子瓶子罐子里面的东西是不确定的,是
会变的 - 所以我们把它叫做
变量
变量名,为了区分这些变量里面具体是什么,我们一般会给在瓶子外面贴一个标签, 写上名字作为区分- 在程序里面我们就把它叫做
变量名,以用来区分不同的变量之间的区别,方便我们管理
- 在程序里面我们就把它叫做
变量和变量名都是可以在后续使用过程中,进行修改的- 如: 我们可以在中途变更箱子中的内容, 或者修改箱子上的标签
2.如何定义/使用变量
- 变量的定义有两个关键词
varlet var是ES5历史的产物,存在一些缺陷let是ES6引入的新定义词,解决了var的一些bug,推荐使用- 在
rhino内核中,支持let的使用
1.变量赋值[初始化]
- 定义方法: 以关键字
var或let开头, 以等号=连接,变量名在左, 变量内容在右 - 即将右侧内容,赋值给左侧变量名中
// var来定义,不推荐
var 字符串变量名1 = "变量内容"
var 数字变量名1 = 123
// let来定义,推荐
let 字符串变量名2 = "变量内容"
let 数字变量名2 = 123
注意
- 用
let定义变量时,不能用同一个变量名来定义,会引起报错
let a = 1
let a = 2 //报错
// js 编译文件失败: org.mozilla.javascript.EvaluatorException: Compilation produced 1 syntax errors.
2.查看/变更变量内的值
// 定义并赋值变量
let 字符串变量名 = "变量内容"
let 数字变量名 = 123
// 打印变量内容
logd(字符串变量名) // 返回 变量内容
logd(数字变量名) // 返回 123
// 修改变量内容
字符串变量名 = "换个内容试试"
数字变量名 = "我不想存数字了"
// 打印新的内容
logd(字符串变量名) // 返回 换个内容试试
logd(数字变量名) // 返回 我不想存数字了
3.变量名定义规则
- 变量可以
字母,数字,下划线,中文来组合 - 变量不能以
数字为开头 - 可以以
$和_为开头 - 大小写敏感,大写
A和小写a代表不同的含义
4.其他
- 定义多个变量的时候,可以写到同一行, 用逗号隔开
let a = 1, b = 2, c = 3
logd(a, b, c) // 返回 1 2 3
3.常量[不变量]
什么是常量
- 常量即
不变量,也是变量的一种形式, 意为定义后不能改变, 通常作为定义一个固定不变的值, 防止被无意中改变 - 当修改常量时,代码会报错或修改失败
- 常量定义的关键字是
const
const 常量名 = "常量值"
logd(常量名) // 返回 常量值
常量名 = "换个内容试试"
logd(常量名) // 返回 常量值
定义规则
- 一般, 我们定义常量, 约定俗成的会将英文字母全部大写,并把每个词用下划线
_隔开,用以区分普通变量 - 当然, 这个规则在js中不是强制要求, 看个人习惯
const START_TIME = 1
const 常量_起始_时间 = 2