- JavaScript 是一种弱类型或者说动态语言。这意味着不用提前声明变量的类型,在程序运行过程中,类型会被自动确定。这也意味着可以使用同一个变量保存不同类型的数据:
var foo = 42; // foo is a Number now
var foo = "bar"; // foo is a String now
var foo = true; // foo is a Boolean now
原始值
- 在JavaScript中除 Object 以外的所有类型都是不可变的(值本身无法被改变),我们称这些类型的值为“原始值”。
Boolean
- 布尔表示一个逻辑实体,意为真、假,可以有两个值:true和false。
Null
- Null 类型只有一个值:null,表示空值,表示没有被呈现。
Undefined
- 一个没有被赋值的变量会有个默认值undefined。
var person;
- Undefined 与Null的区别:Undefined 与 null 的值相等,但类型不相等:
typeof undefined // undefined
typeof null // object
null === undefined // false
null == undefined // true
Number
- 数字类型(Number):在JavaScript里,数字类型能够代表的范围是 -(2的63次方-1) ~ (2的63次方-1) 。除了具体的数值,在JavaScript中还有一些带符号的值:+Infinity,-Infinity和NaN(非数值,Not-a-Number),分别代表正无穷、负无穷和非数值。例如:
19 / +0; // Infinity
19 / -0; // -Infinity
var x1 = 34.00; // 带小数点
var x2 = 34; // 不带小数点
var y = 123e5; // 12300000
var z = 123e-5; // 0.00123
String
- JavaScript的字符串类型用于表示文本数据。在字符串中的每个元素占据了字符串的位置。第一个元素的索引为0,下一个是索引1,依此类推。字符串的长度是它的元素的数量。
- 在JavaScript中的字符串需要使用单引号''或双引号""括起来,表示该值是一个字符串。
var carName = "Porsche 911"; // 使用双引号
var carName = 'Porsche 911'; // 使用单引号
- javaScript 字符串是不可更改的。这意味着字符串一旦被创建,就不能被修改。但是,可以基于对原始字符串的操作来创建新的字符串。例如:
获取一个字符串的子串可通过选择个别字母或者使用String.substr()。
两个字符串的连接使用连接操作符 (+) 或者String.concat()。
-
Symbol
- 符号(Symbols)是ES6新定义的。符号类型是唯一的并且是不可修改的。
typeof操作符
- 由于JavaScript是松散类型的,因此需要有一种手段来检测给定变量的数据类型——typeof就是负责提供这方面信息的操作符。对一个值使用typeof操作符可能返回下列某个字符串:
'undefined' —— 未定义
'boolean' —— 布尔值
'string' —— 字符串
'number' —— 数字值
'object' —— 对象或null
function —— 函数
在实际编程的过程中,可以用typeof判断任何一个变量的数据类型
var message = 'some string';
alert(typeof message); // "string"
alert(typeof(message)); // "string"
alert(typeof 95); // number
JavaScript引用类型
- Javascript数组,JavaScript 数组用方括号书写。
数组的项目由逗号分隔。
var cars = ["Porsche", "Volvo", "BMW"];
var person = {firstName:"Bill", lastName:"Gates", age:62, eyeColor:"blue"};
网友评论