JavaScript 什么是变量?
从字面上看,变量是可变的量;从编程角度讲,变量是用于存储某种/某些数值的存储器。我们可以把变量看做一个盒子,为了区分盒子,可以用BOX1,BOX2等名称代表不同盒子,BOX1就是盒子的名字(也就是变量的名字)。
定义变量使用关键字 var: var 变量名
变量名可以任意取名,但要遵循命名规则:
- 1.变量必须使用字母、下划线(_)或者美元符($)开始。
- 2.然后可以使用任意多个英文字母、数字、下划线(_)或者美元符($)组成。
- 3.不能使用JavaScript关键词与JavaScript保留字。
变量要先声明再赋值(用 var 或 let 语句声明的变量,如果没有赋初始值,则其值为 undefined。)
var mychar;
mychar="javascript";
var mynum = 6;
你可以使用 undefined 来判断变量是否已赋值.( 以下的代码中,变量input未被赋值,因而if条件语句的求值结果是true。)
var input;
if(input === undefined){
doThis();
} else {
doThat();
}undefined 值在布尔类型环境中会被当作 false。例如,下面的代码将会执行函数 myFunction,因为数组myArray中的元素未被赋值:
var myArray = [];
if (!myArray[0]) {
myFunction();
}
数值类型环境中 undefined 值会被转换为 NaN。
var a;
// 计算为 NaN
a + 2;
当你对一个 null 变量求值时,空值 null 在数值类型环境中会被当作0来对待,而布尔类型环境中会被当作 false。例如:
var n = null;
typeof(n);
// "object"
// The Null type has exactly one value, called null.
console.log(n * 32); // 0
变量可以重复赋值
var mychar;
mychar="javascript";
mychar="hello";
- 注意:
- 在JS中区分大小写,如变量mychar与myChar是不一样的,表示是两个变量。
- 变量虽然也可以不声明,直接使用,但不规范,需要先声明,后使用。
变量的作用域
在所有函数之外声明的变量,叫做全局变量,因为它可被当前文档中的任何其他代码所访问。在函数内部声明的变量,叫做局部变量,因为它只能在该函数内部访问。
ECMAScript 6 之前的JavaScript没有 语句块 作用域;相反,语句块中声明的变量将成为语句块所在代码段的局部变量。例如,如下的代码将在控制台输出 5,因为 x 的作用域是声明了 x 的那个函数(或全局范围),而不是 if 语句块。
if (true) {
var x = 5;
}
console.log(x); // 5
如果使用 ECMAScript 6 中的 let 声明,上述行为将发生变化。
if (true) {
let y = 5;
}
console.log(y); // ReferenceError: y is not defined
变量的数据类型
- 1、String: 字符串(文字序列)。 要表示变量的值是字符串,你必须将它们用引号包裹起来。
- 2、Number: 数字。不用引号包围。
- 3、Boolean: 布尔(逻辑)值。一个 True/False (真 / 假)值。 true/false 是 JS 里的特殊关键字,不需要引号。
- 4、Object: 对象,基本上 JavaScript 里的任何东西都是对象,而且都可以被储存在变量里。将这个牢记于心。
- Function (函数)
- Array (数组)一种允许你存储多个值在一个引用里的结构。
- Date (日期)
- RegExp (正则表达式)
- 5、Null (空)
- 6、Undefined (未定义)
- 7、Symbol (符合)(第六版新增)
- 8、Error(错误)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论