JavaScript是一门轻量级的脚本编程语言,它由三部分组成:
- ECMAScript(v4,v5): 定义了JS里面的命名规范,变量,数据类型,基本语法,操作语句等最核心的东西
- DOM: document object model 文档对象模型
- BOM: browser object model 浏览器对象模型
在JavaScript中,变量顾名思义即为可以变化的量。JavaScript中的变量是一个抽象的概念,变量是用来存储值和代表值的。可以这么理解,我有一个箱子专门放书,我把这个箱子起一个名字叫做“放书箱子1”,有一个箱子专门放衣服,我把这个箱子起一个名字叫做“放衣服箱子1”,又这两个名字分别指代那两个箱子,而这两个名字就是变量。那什么又是值?“放书箱子1”里的书,“放衣服箱子1”里的衣服,就相当于值。
在JavaScript中定义一个变量非常的简单,只要遵循以下语法:
var 变量名 = 变量值;
例如:
var bookCase = 10; // 表达的是定义了一个变量叫做bookCase,
//这个变量(可以理解成一个盒子)放的值为10 。
其中 =
是赋值操作,左边为变量名,右边为变量值。
JS中的变量是松散类型的:通过一个var 变量名 就可以存储任何的数据类型。
例如在Java中,如果定义一个变量,需要根据变量类型来用指定的标识符来定义变量,例如:
int number = 10; // 定义一个整数类型的变量
double number = 10.0; // 定义一个双精度类型的变量
String str = "hello world"; // 定义一个字符串类型的变量
而JavaScript变量是松散类型(弱类型)的,所以只需一个var就能搞定,如下:
var number = 10;
var number = 10.1;
var str = "hello world";
而且还能随时改变变量的类型,如下:
var a = 10;
a = "hello";
a = true;
但是不建议这么使用。
对于变量的命名,有一定的命名规范,不能随便起一个变量名。要遵循如下的规则:
- JavaScript严格区分大小写,例如:
var str;
var Str;
var sTr;
var STR;
var stR;
以上的5个变量分别代表不同的变量。
- 建议使用驼峰命名法 (或者c语言风格),驼峰命名法即首字母小写,其余的每一个有意义的单词的首字母大写,且让变量名尤其代表的含义,例如:
var a = 10; // 不建议,因为不知道a是什么
var studentinfo = 'student'; //不建议,很难看清楚变量表达的含义
var studentInfo = 'student'; // 驼峰命名法,推荐使用
var student_info = 'student'; // c语言风格命名,也可以使用
- 可以使用数字,字母,下划线,$,但是数字不能作为首位
var a; // 合法
var a1; // 合法
var a_; // 合法
var $; 合法
var _a; 合法
var 1a; // 不合法
- 不能使用关键字和保留字
关键字:在JavaScript中有特殊意义的字
保留字:未来可能成为关键字的
JavaScript中的数据类型分类:基本数据类型和引用数据类型。
- 基本数据类型:基本数据类型:由简单的结构组成的,包括
数字(number)、字符串(string)、布尔(boolean)、null、undefined
这五种。
var num = 12;
var str = 'derrick';
var boo = true; // true 和 FALSE
var n = null;
var m = undefined;
- 引用数据类型:结构相对复杂一些的,包括有
对象数据类型(object)、函数数据类型(function)、数组数据类型(Array)、正则(RegExp)
。
var obj = {
name: 'Qian'
};// 对象数据类型
var ary = [1, 2, 3, 4]; // 数组 也是对象数据类型
var reg = /^[A-Z][0-9]{10}$/; // 正则 也是数据对象类型
var fn = function () { // 函数数据类型
}