详解JavaScript基本类型和引用类型
基本类型
JavaScript 中的基本类型指的是简单的数据类型。它们在赋值时被直接存储在变量访问的位置。JavaScript 有 6 种基本类型:Number
、String
、Boolean
、null
、undefined
和 Symbol
。
Number
Number
是一种表示数字的基本类型,它包括整数和浮点数。JavaScript 中的所有数字都是以双精度 64 位浮点数的形式存储的。这意味着在进行数字计算时可能会出现精度问题。
示例:
var x = 5;
var y = 2.3;
var z = x + y; // 7.3
console.log(z);
String
String
是一种表示文本的基本类型。字符串可以包含任何字符,包括空格和特殊字符。字符串可以由双引号或单引号括起来。
示例:
var message = "Hello World!";
console.log(message);
Boolean
Boolean
是一种表示逻辑值的基本类型。它只有两个取值:true
和 false
。用于逻辑判断。
示例:
var x = 5;
var y = 3;
var z = (x > y); // true
console.log(z);
null 和 undefined
null
和 undefined
都表示没有值。null
表示一个空对象指针,而 undefined
表示一个未定义的值。
示例:
var x = null;
var y = undefined;
console.log(x); // null
console.log(y); // undefined
Symbol
Symbol
是一种新的基本类型,它在 ECMAScript 6 引入,并表示一个唯一的标识符。
示例:
var sym1 = Symbol("foo");
var sym2 = Symbol("foo");
console.log(sym1 === sym2); // false
引用类型
除了基本类型外,JavaScript 还有引用类型。引用类型是由对象构成的,它们不是直接存储在变量访问的位置上,而是存储在堆内存中,并通过引用来访问它们。
JavaScript 中的引用类型包括:Object
、Array
、Function
、Date
、RegExp
等。
Object
Object
是所有引用类型的基类。它是一组属性的无序集合,属性可以是基本类型或引用类型。
示例:
var person = {
name: "张三",
age: 18,
hobbies: ["篮球", "游泳"]
};
console.log(person.name); // 张三
console.log(person.hobbies[0]); // 篮球
Array
Array
是一种有序的、编号的、可重复的集合数据类型。每个元素可以是基本类型或引用类型。
示例:
var colors = ["red", "green", "blue"];
console.log(colors[0]); // red
console.log(colors.length); // 3
Function
Function
是一种特殊的对象类型,它可以通过 function
关键字定义,是 JavaScript 中的一等公民。
示例:
function greet(name) {
console.log("Hello, " + name + "!");
}
greet("张三"); // Hello, 张三!
Date
Date
是表示日期和时间的对象。它有多种构造函数,可以使用多种方式来创建 Date
对象。
示例:
var now = new Date();
console.log(now.toLocaleString()); // 2022年7月27日 上午11:06:58
RegExp
RegExp
是表示正则表达式的对象。它可以用来匹配字符串中的模式,并进行搜索和替换。
示例:
var re = /hello/gi;
var str = "Hello World! hello javascript!";
console.log(re.test(str)); // true
console.log(str.replace(re, "hi")); // Hi World! hi javascript!
总结
JavaScript 中有 6 种基本类型和多种引用类型。基本类型在赋值时直接存储在变量访问的位置上,而引用类型则是存储在堆内存中,通过引用来访问。了解这些类型及其特点,有助于我们更好地理解 JavaScript 的数据类型系统。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解JavaScript基本类型和引用类型 - Python技术站