JavaScript学习记录 (二) 变量和数据类型

262 阅读2分钟

1. 变量

  • 定义变量使用关键字 “var”。
  • 变量名只能以 “字母(大小写均可)”,“$符号”,“_符号” 开头。
  • 变量名只能以 “字母(大小写均可)”,“$符号”,“_符号” ,“数字”组成。
  • 变量名区分大小写。

var $a1, a$2, a3$;
var _a1, a_2, a3_;
var aa1, a2a;
var Aa1, A2A;
(以上均为合法变量)

(以下均为非法变量)
var 1a1, 2a2, 31a;
var .a1, -1a, !a1;
var a-1, a1\, a^1;


2. 数据类型

  • JS有 6种 数据类型(5种基本数据类型,1种引用数据类型。)

基本数据类型:Undefined,Null,BooleanStringNumber
引用数据类型:Object


3. 变量的数据类型

  • JS为弱类型语言,根据你赋的值,运行时决定变量的类型。
  • 可以使用 typeof运算符 和 instanceof运算符,分别获取 基本数据的类型 和 引用数据的对象类型

// 像typeof运算符,用来获取基本数据类型,它是好帮手
var und;
console.log(typeof und); // 输出undefined
console.log(typeof true);      // 输出boolean
var str = "string";
console.log(typeof str);  // 输出string
console.log(typeof 123);       // 输出number
// 可是用来获取引用数据的对象类型,它就没办法了,任何对象包括空对象,它都只会返回object对象
console.log(typeof null);      // 输出object
var obj = {};
console.log(typeof obj);        // 输出object
// 要想获取引用数据的对象类型,可以使用instanceof运算符
// 给出相应的对象类型作比较,就可以获取引用数据的对象类型
function Test() {}
console.log(new Test() instanceof Test);     // 返回true
var Obj = new Object();
console.log(Obj instanceof Object); // 返回true
console.log(new Array() instanceof Array);   // 返回true
var Dat= new Date();
console.log(Dat instanceof Date);     // 返回true
console.log(new RegExp() instanceof RegExp); // 返回true


4. 良好的编程习惯

  • 声明变量第一时间初始化,养成良好习惯。
  • 声明变量时,一旦确认了储存的数据类型,后面就不要储存其他数据类型了,以免引起混乱。

var obj  =  null;   // Object类型先用null初始化
var bool = false;   // Boolean类型先用false初始化
var str  =    "";   // String类型先用空字符串初始化
var num  =     0;   // Number类型先用0初始化