JavaScript 数据类型
值类型(基本类型):字符串(String)、数字(Number)、布尔(Boolean)、空(Null)、未定义(Undefined)、Symbol。
引用数据类型(对象类型):对象(Object)、数组(Array)、函数(Function),还有两个特殊的对象:正则(RegExp)和日期(Date)。
JavaScript 拥有动态类型
JavaScript 是一种动态类型的语言,这意味着在运行时可以改变变量的数据类型。在 JavaScript 中,变量的数据类型是在运行时确定的,而不是在编译时确定的。
举个例子:
javascript">let x = 10; // x 是一个数字类型的变量
console.log(typeof x); // 输出 "number"x = "Hello"; // 现在 x 是一个字符串类型的变量
console.log(typeof x); // 输出 "string"
在上面的例子中,变量 x
首先被赋值为一个数字,然后又被赋值为一个字符串,这种灵活性是动态类型语言的特点之一。由于 JavaScript 是动态类型的语言,变量的数据类型可以随时改变,这使得 JavaScript 在某些情况下更加灵活,但也可能导致一些类型错误。
动态类型的特性使得 JavaScript 在编写代码时更加灵活,但也需要开发人员注意变量的数据类型,以避免潜在的类型错误。因此,在编写 JavaScript 代码时,建议注重变量的数据类型,以确保代码的可靠性和稳定性。
JavaScript 字符串
在 JavaScript 中,字符串是一种表示文本数据的数据类型。字符串可以包含字母、数字、特殊字符等,用单引号(')或双引号(")括起来表示。以下是一些关于 JavaScript 字符串的常见操作:
- 创建字符串:
javascript">let str1 = 'Hello'; // 使用单引号创建字符串
let str2 = "World"; // 使用双引号创建字符串
JavaScript 的字符串是不可变的,也就是说一旦字符串被创建,它的值就不能被改变。因此,对字符串的操作通常会返回一个新的字符串。
JavaScript 数字
在 JavaScript 中,数字是一种基本的数据类型,用于表示数值。JavaScript 中的数字可以是整数或浮点数(带有小数点的数),并且没有区分整数和浮点数的类型。
以下是关于 JavaScript 数字的一些概念和声明方法:
-
整数和浮点数:
javascript">let integerNumber = 10; // 整数 let floatNumber = 3.14; // 浮点数
-
科学计数法:
JavaScript 中的数字也可以使用科学计数法表示。javascript">let scientificNumber = 2.5e6; // 2.5 * 10^6,即 2500000
-
NaN:
NaN 表示一个非数字值,当某个操作无法返回有效的数值时会返回 NaN。javascript">let result = 10 / "apple"; // 结果为 NaN
-
Infinity:
Infinity 表示正无穷大,当一个数除以 0 时会返回 Infinity。javascript">let positiveInfinity = Infinity; // 正无穷大
-
数字声明:
可以使用var
、let
或const
关键字来声明数字变量。javascript">var x = 10; let y = 3.14; const PI = 3.14159;
-
数字方法:
JavaScript 提供了一些内置方法来操作数字,例如toFixed()
、parseInt()
、parseFloat()
等。javascript">let num = 3.14159; let roundedNum = num.toFixed(2); // 将数字四舍五入为两位小数,结果为 "3.14"
通过以上概念和声明方法,可以在 JavaScript 中轻松地处理各种数值计算和操作。数字在编程中是非常常见的数据类型,对数字的理解和使用是编程过程中的基础之一。
JavaScript 布尔
在 JavaScript 中,布尔(Boolean)是一种基本的数据类型,用于表示逻辑值。布尔类型只有两个取值:true
(真)和false
(假)。布尔类型通常用于条件判断和逻辑运算。
以下是关于 JavaScript 布尔的一些概念和声明方法:
-
布尔取值:
true
:表示逻辑真。false
:表示逻辑假。
-
布尔声明:
可以使用var
、let
或const
关键字来声明布尔变量。javascript">let isTrue = true; let isFalse = false;
布尔类型在 JavaScript 中是非常重要的,它在条件判断、逻辑运算等方面起着关键作用。通过布尔类型的灵活运用,可以实现复杂的逻辑控制和条件判断,使得代码更加灵活和可读。
JavaScript 数组
在 JavaScript 中,数组是一种用于存储多个值的有序集合。数组可以包含任意类型的数据,包括数字、字符串、对象、函数等。以下是一些关于 JavaScript 数组声明的方法:
-
使用数组字面量:
使用方括号([]
)来声明一个数组,并在方括号内用逗号分隔各个元素。javascript">let numbers = [1, 2, 3, 4, 5]; // 包含数字的数组 let fruits = ['apple', 'banana', 'orange']; // 包含字符串的数组 let mixedArray = [1, 'hello', true]; // 包含不同类型的元素的数组
-
使用
new Array()
构造函数:
可以使用new Array()
构造函数来创建一个空数组或指定长度的数组。javascript">let emptyArray = new Array(); // 创建一个空数组 let arrayWithLength = new Array(3); // 创建一个长度为 3 的数组
-
访问数组元素:
可以使用索引(从 0 开始)来访问数组中的元素。javascript">console.log(numbers[0]); // 输出数组 numbers 中第一个元素的值
JavaScript 对象
在 JavaScript 中,对象(Object)是一种复合数据类型,用于存储键值对(properties)。对象可以包含多个属性,每个属性由一个键(key)和一个值(value)组成。以下是关于 JavaScript 对象的一些重要概念和声明方法:
-
对象声明:
可以使用对象字面量({}
)来声明一个对象,属性之间用逗号分隔。javascript">let person = {name: 'Alice',age: 30,city: 'New York' };
-
访问对象属性:
可以使用点号(.
)或方括号([]
)来访问对象的属性。javascript">console.log(person.name); // 使用点号访问属性 console.log(person['age']); // 使用方括号访问属性
-
修改对象属性:
可以通过赋值操作来修改对象的属性。javascript">person.age = 31; // 修改 age 属性的值为 31
-
添加新属性:
可以通过赋值操作来添加新的属性到对象中。javascript">person.gender = 'female'; // 添加一个新的属性 gender 到对象中
-
嵌套对象:
对象可以包含其他对象作为属性,形成嵌套结构。javascript">let car = {make: 'Toyota',model: 'Camry',owner: {name: 'Bob',age: 40} };
-
对象方法:
对象的属性也可以是函数,称为对象方法。javascript">let person = {name: 'Alice',sayHello: function() {console.log('Hello, my name is ' + this.name);} }; person.sayHello(); // 调用对象方法
JavaScript 中的对象是非常灵活和强大的数据结构,可以用来表示复杂的数据关系和结构。通过对象的属性和方法,可以实现丰富的功能和逻辑。对于前端开发来说,对象在处理数据和交互中扮演着重要的角色。
Undefined 和 Null
在 JavaScript 中,undefined
和 null
都是表示“无值”的特殊值,但它们之间有一些微妙的区别。
-
undefined
:-
undefined
表示一个变量已经声明但尚未赋值,或者访问对象属性时属性不存在的情况。 -
当一个变量被声明但没有赋予初始值时,它的默认值就是
undefined
。 -
例如:
javascript">let x; console.log(x); // 输出 undefined
-
-
null
:-
null
表示一个变量被明确赋值为“空值”或“无值”。 -
通常用来表示变量的空状态,与
undefined
不同,null
是一个被赋予的值。 -
例如:
javascript">let y = null; console.log(y); // 输出 null
-
-
区别:
undefined
是 JavaScript 的原始值之一,表示“未定义”。null
也是 JavaScript 的原始值之一,表示“空值”或“无值”。undefined
是变量的默认值,而null
是一种特殊的赋值。- 在条件判断中,
undefined
会被当做false
处理,而null
不会。
-
使用场景:
undefined
通常表示某个变量未初始化,或者函数没有返回值。null
通常用来表示一个对象不含有值,或者用来重置对象的值为“无值”。
undefined
和 null
都表示“无值”,但是它们的含义和使用场景略有不同。在编程中,正确地理解和使用这两个值是很重要的,可以避免一些潜在的错误和逻辑混乱。
new 声明变量类型
在 JavaScript 中,new
关键字通常用于创建一个新的实例对象,特别是在使用构造函数创建对象实例时。下面是一些常见的用法:
-
使用
new
关键字创建对象实例:javascript">function Person(name, age) {this.name = name;this.age = age; }let person1 = new Person('Alice', 30); let person2 = new Person('Bob', 25);
-
new
运算符:
new
运算符用于实例化一个构造函数,创建一个新的对象实例。javascript">let obj = new Object(); // 创建一个空对象 let date = new Date(); // 创建一个表示当前时间的 Date 对象
-
构造函数:
构造函数是一个用来创建对象的函数,通过new
关键字调用构造函数会返回一个新的对象实例。javascript">function Car(make, model) {this.make = make;this.model = model; }let car = new Car('Toyota', 'Camry');
-
new
关键字和原型链:
在使用new
关键字创建对象实例时,对象会继承构造函数的原型链上的属性和方法。javascript">function Animal(name) {this.name = name; }Animal.prototype.sayHello = function() {console.log('Hello, my name is ' + this.name); };let dog = new Animal('Buddy'); dog.sayHello(); // 输出 "Hello, my name is Buddy"
new
关键字在 JavaScript 中用于创建对象实例,特别是在使用构造函数时非常常见。通过 new
关键字,可以轻松地实例化对象并访问构造函数的属性和方法。
关注我,不迷路,共学习,同进步
关注我,不迷路,共学习,同进步