javascript开发技术大全-第3章 js数据类型

JavaScript 开发技术大全 - 第3章 JS 数据类型

JavaScript 语言在数据类型方面相对于其他语言而言,具有非常灵活的特点。这是因为 JavaScript 在遵循 ECMAScript 规范的基础上,主要采用了基本数据类型和引用数据类型两种方式来处理数据。

基本数据类型

JavaScript 的基本数据类型有以下 7 种:

  1. 数字类型(Number)

这种类型主要用来表示数字,包括整数和浮点数。在 JavaScript 中,无论输入的数字有多大,都会被自动转化为浮点数来存储,其精度为 15 位,例如:

javascript
let num1 = 514; // 整数
let num2 = 3.14; // 浮点数,也可以写成 3.14e2
console.log(num1); // 输出 514
console.log(num2); // 输出 3.14

  1. 字符串类型(String)

这种类型主要用来表示文本字符串,可以使用单引号、双引号、反引号来创建,例如:

javascript
let str1 = 'JavaScript'; // 单引号
let str2 = "ECMAScript"; // 双引号
let str3 = `it is a string`; // 反引号支持模板字符串
console.log(str1, str2, str3); // 输出 JavaScript ECMAScript it is a string

  1. 布尔类型(Boolean)

这种类型主要用来表示 truefalse 两个状态,例如:

javascript
let isTrue = true; // true 或 false,不是字符串
console.log(isTrue); // 输出 true

  1. null 类型

这种类型只有一个值,即 null,用于表示变量为空,其类型为空对象(object),例如:

javascript
let a = null;
console.log(a); // 输出 null

  1. undefined 类型

这种类型同样只有一个值,即 undefined,表示变量已声明但未初始化,或者对象中缺少该属性,例如:

javascript
let name;
console.log(name); // 输出 undefined
console.log({}.attr); // 输出 undefined

  1. Symbol 类型

这种类型是 ES6 新增的数据结构,主要用于唯一性的判断,例如:

javascript
let s1 = Symbol(); // 创建一个唯一性的 Symbol 值
let s2 = Symbol('description'); // 创建一个带有描述的 Symbol 值
let obj = {};
obj['name'] = 'JavaScript';
obj[s1] = 'symbol value';
console.log(obj);
console.log(obj[s1]); // 输出 symbol value

  1. BigInt 类型

这种类型用来表示超过 2^53 - 1 的整数值,例如:

javascript
let a = BigInt(9007199254740991);
let b = BigInt('9007199254740991');
console.log(a); // 输出 9007199254740991n
console.log(b); // 输出 9007199254740991n
console.log(10n * a); // 输出 90071992547409910n

引用数据类型

JavaScript 中的引用数据类型主要包括对象、数组和函数。

  1. 对象类型(Object)

对象是由一组无序的键值对组成的,其中键必须是字符串或 Symbol 类型,值可以是任意类型的数据,例如:

javascript
let person = {
name: 'Lily',
age: 18,
sex: 'female'
};
console.log(person.name); // 输出 Lily

对象可以通过点语法或方括号语法进行访问,例如:

javascript
let obj = {};
obj.name = 'JavaScript'; // 等价于 obj['name'] = 'JavaScript';
console.log(obj.name); // 输出 JavaScript

  1. 数组类型(Array)

数组是一组有序的元素组成的集合,其中每个元素都可以是任意类型的数据,例如:

javascript
let arr = [1, 2, 3, 'JavaScript', true];
console.log(arr[0]); // 输出 1

数组也是对象的一种形式,因此也可以添加属性、方法等,例如:

javascript
let arr = [];
arr.name = 'JavaScript'; // 添加一个属性
arr.push(1, 2, 3); // 添加元素
console.log(arr.name); // 输出 JavaScript
console.log(arr.length); // 输出 3

  1. 函数类型(Function)

函数是一个可以被重复使用的代码块,它可以接受任意数量的参数,并且可以返回任意类型的值。函数可以被定义为函数声明或函数表达式的形式,例如:

```javascript
// 函数声明
function add(a, b) {
return a + b;
}
console.log(add(1, 2)); // 输出 3

// 函数表达式
let sub = function(a, b) {
return a - b;
}
console.log(sub(1, 2)); // 输出 -1
```

以上就是 JavaScript 中的数据类型,开发者在使用时可以根据自己的需要选择具体的数据类型,充分发挥 JavaScript 的灵活特点。

示例说明

示例1:Symbol 类型的使用

let s1 = Symbol();
let s2 = Symbol('description');
console.log(typeof s1);             // 输出 symbol
console.log(typeof s2);             // 输出 symbol
console.log(s1 === s2);             // 输出 false

在上述示例中,我们创建了两个 Symbol 类型的变量,其中 s1 是一个唯一性的 Symbol 值,而 s2 是带有描述的 Symbol 值。由于每个 Symbol 值都是唯一的,因此 s1s2 不相等。

示例2:数组添加属性

let arr = [];
arr.name = 'JavaScript';
arr.push(1, 2, 3);
console.log(arr.name);            // 输出 JavaScript
console.log(arr[3]);              // 输出 3
console.log(arr.length);          // 输出 3

在上述示例中,我们创建了一个数组变量 arr,并且给其添加了一个属性 name,然后通过 push 方法添加元素。需要注意的是,虽然数组也是一种对象的形式,但是添加属性并不会影响到它的长度和索引值。因此,arr.length 仍然为 3,而 arr[3] 是 undefined。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:javascript开发技术大全-第3章 js数据类型 - Python技术站

(0)
上一篇 2023年5月17日
下一篇 2023年5月17日

相关文章

  • JavaScript的public、private和privileged模式

    JavaScript是基于对象的编程语言,因此在讨论其公共、私有和特权模式时,通常是在对象和类的上下文中。 公共模式(Public Mode) 在JavaScript中,公共模式是指公共成员是可以通过对象外部进行访问的成员。例如,我们可以创建一个简单的Person类: function Person(name, age) { this.name = name…

    JavaScript 2023年6月10日
    00
  • JavaScript实现大文件分片上传处理

    我可以为你讲解如何实现JavaScript实现大文件分片上传处理,以下是具体的攻略步骤: 步骤1:选择文件 在实现大文件分片上传之前,第一步需要让用户选择一个文件。你可以在页面上加入一个文件选择表单,如下所示: <input type="file" name="file" id="file"&…

    JavaScript 2023年5月27日
    00
  • Node.js的特点和应用场景介绍

    Node.js的特点和应用场景介绍 什么是Node.js Node.js是基于Chrome V8 JavaScript引擎的一个开源、跨平台的JavaScript运行环境。通过Node.js可以使用JavaScript进行服务器端的开发,以及命令行工具的编写。 Node.js的特点 异步IO Node.js采用事件驱动、非阻塞式IO的编程模型,使得模块之间的…

    JavaScript 2023年5月28日
    00
  • JS关于for循环中使用setTimeout的四种解决方案

    当我们使用JavaScript中的for循环时,有时需要对循环中的操作进行延迟执行,以便在循环过程中给用户一些反馈或避免卡顿。然而,由于JavaScript的异步机制,使用setTimeout方法时,循环内的操作并不会按照我们预期的方式执行。下面介绍一些解决这一问题的方案。 方案一:借助函数递归 可以通过函数递归的方式来模拟for循环的效果。具体来说,我们可…

    JavaScript 2023年6月10日
    00
  • js中的reduce()函数讲解

    JS中的reduce()函数讲解 什么是reduce()函数? reduce()函数是JavaScript中常用的数组方法之一,其作用是对数组中的元素进行迭代,并将它们合并到单个值中。该函数接收两个参数:累加器函数(accumulator)和初始值(initialValue)。 累加器函数接受4个参数: accumulator (缩写为a):进行迭代计算时累…

    JavaScript 2023年5月27日
    00
  • JS遍历Json字符串中键值对先转成JSON对象再遍历

    要在JavaScript中遍历JSON字符串中的键值对,首先需要将JSON字符串转换为JavaScript对象。以下是实现此任务的完整步骤: 使用 JSON.parse() 将JSON字符串转成JSON对象。JSON.parse() 使用两个参数:要解析的JSON字符串和一个可选的“reviver”函数,用于调整解析生成的结果。如果只想将JSON字符串转换成…

    JavaScript 2023年5月27日
    00
  • Flutter web bridge 通信总结分析详解

    Flutter web bridge 通信总结分析详解 本文将详细讲解Flutter Web中的Bridge通信机制。Flutter Web框架中,开发者可以使用Bridge来实现Flutter与Web端的通信交互。Bridge通信机制主要包含以下三个部分:Method Channel、Event Channel、Basic Message Channel。…

    JavaScript 2023年6月11日
    00
  • JavaScript实现简单钟表时钟

    下面我将为你详细讲解如何使用JavaScript实现简单的钟表计时功能。 准备工作 首先,我们需要一个HTML页面作为基础。可以先创建一个空的HTML文件,然后在文件中添加以下代码: <!DOCTYPE html> <html> <head> <title>JavaScript时钟</title> …

    JavaScript 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部