javascript之Array 数组对象详解

JavaScript之Array数组对象详解

什么是数组

在 JavaScript 中,数组(Array)是一种复合数据类型,用于存储一组有序的数据。可以将数组看作是一个盒子,该盒子中可以存放多个数据,而且这些数据是有序的,通过下标(索引)来访问每一个数据。

数组的创建

JavaScript 中,可以使用两种方式来创建数组:

1. 使用字面量方式创建数组

let arr = [1, 2, 3];
console.log(arr); // [1, 2, 3]
console.log(typeof arr); // object

2. 使用 Array 构造函数创建数组

let arr = new Array(1, 2, 3);
console.log(arr); // [1, 2, 3]
console.log(typeof arr); // object

数组的基本操作

访问数组元素

数组的每个元素都有一个对应的下标,下标从 0 开始,以数组的长度减 1 结尾。可以通过下标来访问数组中的元素。

let arr = [1, 2, 3];
console.log(arr[0]); // 1
console.log(arr[1]); // 2
console.log(arr[2]); // 3

修改数组元素

可以通过下标来修改数组中的元素。

let arr = [1, 2, 3];
arr[0] = 4;
arr[1] = 5;
arr[2] = 6;
console.log(arr); // [4, 5, 6]

获取数组长度

可以使用数组的 length 属性来获取数组的长度。

let arr = [1, 2, 3];
console.log(arr.length); // 3

添加元素

可以使用数组的 push 方法来在数组的末尾添加一个或多个元素。

let arr = [1, 2, 3];
arr.push(4);
console.log(arr); // [1, 2, 3, 4]

删除元素

可以使用数组的 pop 方法来删除数组末尾的元素。

let arr = [1, 2, 3];
arr.pop();
console.log(arr); // [1, 2]

数组遍历

可以使用 for 循环或 forEach 方法来遍历数组。

let arr = [1, 2, 3];
for (let i = 0; i < arr.length; i++) {
  console.log(arr[i]);
}

arr.forEach(function(item) {
  console.log(item);
});

数组的高级操作

数组的排序

可以使用数组的 sort 方法来对数组进行排序。默认情况下,该方法使用 ASCII 码对数组进行排序。

let arr = ['banana', 'apple', 'orange'];
arr.sort();
console.log(arr); // ['apple', 'banana', 'orange']

如果需要根据某个特定的条件进行排序,可以传递一个函数给 sort 方法。

let arr = [
  { name: 'Apple', price: 2.5 },
  { name: 'Orange', price: 1.8 },
  { name: 'Banana', price: 3.2 }
];
arr.sort(function(a, b) {
  return a.price - b.price;
});
console.log(arr);
// [
//   { name: 'Orange', price: 1.8 },
//   { name: 'Apple', price: 2.5 },
//   { name: 'Banana', price: 3.2 }
// ]

数组的过滤

可以使用数组的 filter 方法来过滤数组中的元素。

let arr = [1, 2, 3, 4, 5];
let result = arr.filter(function(item) {
  return item % 2 === 0;
});
console.log(result); // [2, 4]

数组的映射

可以使用数组的 map 方法来将数组的每个元素映射为一个新的元素。

let arr = [1, 2, 3];
let result = arr.map(function(item) {
  return item * 2;
});
console.log(result); // [2, 4, 6]

示例说明

实现一个数组去重函数

function unique(arr) {
  let result = [];
  for (let i = 0; i < arr.length; i++) {
    if (result.indexOf(arr[i]) === -1) {
      result.push(arr[i]);
    }
  }
  return result;
}

let arr = [1, 2, 3, 1, 2, 5];
console.log(unique(arr)); // [1, 2, 3, 5]

实现一个数组求和函数

function sum(arr) {
  let result = 0;
  for (let i = 0; i < arr.length; i++) {
    result += arr[i];
  }
  return result;
}

let arr = [1, 2, 3, 4, 5];
console.log(sum(arr)); // 15

总结

本文对 JavaScript 中的数组进行了详细的讲解,包括了数组的创建、基本操作、高级操作等内容。具体而言,讨论了数组的定义及创建、访问、修改、长度获取、添加元素、删除元素、遍历、排序、过滤和映射等操作。最后,通过两个示例,加深了对数组操作的理解和运用。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:javascript之Array 数组对象详解 - Python技术站

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

相关文章

  • JavaScript箭头函数中的this详解

    标题:JavaScript箭头函数中的this详解 在JavaScript中,this是一个非常重要的关键字,它表示当前上下文中的对象。然而,在箭头函数中,this却和常规的函数有所不同,它的指向更有一些特别之处。下面我们将对JavaScript箭头函数中的this进行详细讲解。 正常函数中的this 在正常函数中,this的指向是根据函数的调用方式来决定的…

    JavaScript 2023年6月10日
    00
  • js下用eval生成JSON对象

    使用eval函数可以将字符串转换为JavaScript代码执行,因此可以使用eval生成JSON对象。以下是生成JSON对象的完整攻略: 1. 准备JSON字符串 首先,你需要准备一个字符串表示的JSON数据。这个JSON字符串必须遵循JSON语法规范,且必须被引号包裹。下面是一个示例JSON字符串: var jsonStr = ‘{"name&q…

    JavaScript 2023年5月27日
    00
  • JavaScript的防抖和节流案例

    JavaScript的防抖和节流是常用的优化技巧,可以有效地控制函数的执行频率,提升Web页面的性能和用户体验。本文将从原理、使用场景,以及基于两个实际案例的讲解,逐步深入介绍JavaScript的防抖和节流优化技巧。 一、防抖和节流的原理 防抖和节流的本质都是控制函数的执行频率,从而提升Web页面的性能。他们的实现方式不同,具体如下: 1. 防抖 防抖的原…

    JavaScript 2023年6月10日
    00
  • js中的string.format函数代码

    下面是详细讲解 JavaScript 中的 string.format 函数的完整攻略。 string.format 函数简介 在 JavaScript 中,我们经常需要将一些变量的值格式化成字符串,这时我们可以使用 string.format 函数来进行格式化,以达到我们想要的结果。string.format 函数可以将一个 JavaScript 字符串模…

    JavaScript 2023年5月28日
    00
  • JS中使用mailto实现将用户在网页中输入的内容传递到本地邮件客户端

    在JS中使用mailto协议可以实现将用户输入的内容传递到本地邮件客户端。mailto协议是一种特殊的URL协议,使用具有mailto之前缀的超链接或javascript中的window.location.href等方法可以触发邮件客户端的启动。 以下是实现将用户在网页中输入的内容传递到本地邮件客户端的完整攻略: 1.编写HTML代码 首先,需要在HTML中…

    JavaScript 2023年5月19日
    00
  • 基于javascript原生判断DOM是否加载完毕

    使用原生JS实现判断DOM是否加载完毕 在网页中,DOM(Document Object Model)是指HTML文档中各个元素的组成结构。当我们需要操作DOM时,必须确保DOM已经加载完毕。下面是一种使用原生JS实现判断DOM是否加载完毕的方法: document.addEventListener(‘DOMContentLoaded’, function(…

    JavaScript 2023年6月10日
    00
  • 实例讲解使用原生JavaScript处理AJAX请求的方法

    处理AJAX请求是现代Web开发中非常重要的一部分,可以轻松地从服务器加载数据并进行无需刷新页面的动态更新。原生JavaScript提供了一些内置的方法,可用于处理AJAX请求,并通过JavaScript代码与其他服务端技术交互。 以下是使用原生JavaScript处理AJAX请求的方法的完整攻略: 步骤一:创建XMLHttpRequest对象 XMLHtt…

    JavaScript 2023年6月11日
    00
  • JavaScript中this详解

    JavaScript中this详解 介绍 this是JavaScript语言中的一个关键字,表示函数在调用时所在的对象。this的指向是在函数被调用时确定的,而不是在函数被创建时确定的。由于JavaScript中的函数可以在不同的对象上下文中被调用,因此this的指向具有动态性。 this的四种调用方式 1. 作为函数调用 当函数不作为对象的属性,或使用ca…

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