首页 > 编程语言 >JavaScript学习笔记—数组的方法

JavaScript学习笔记—数组的方法

时间:2023-01-22 22:34:54浏览次数:45  
标签:arr 孙悟空 猪八戒 JavaScript 沙和尚 笔记 result 数组

1. 非破坏性方法

(1)Array.isArray():用来检查一个对象是否是数组

console.log(Array.isArray([1,2,3,4])); // true
console.log(Array.isArray({name: "孙悟空"})); // false

(2)at():

  • 根据索引获取数组中的指定元素
  • at可以接收负索引作为参数(如arr.at(-1)就是倒数第一个元素)
const arr = ["孙悟空", "猪八戒", "沙和尚", "唐僧", "沙和尚"];
console.log(arr.at(-2)); // 沙和尚
console.log(arr.at(0)); // 孙悟空

(3)concat():

  • 用来链接两个或多个数组
  • 非破坏性方法,不会影响原数组,而是返回一个新的数组
const arr = ["孙悟空", "猪八戒", "沙和尚", "唐僧", "沙和尚"];
const arr2 = ["蜘蛛精", "白骨精"];
let result = arr.concat(arr2); // ["孙悟空", "猪八戒", "沙和尚", "唐僧", "沙和尚", "蜘蛛精", "白骨精"]
result = arr.concat(arr2, ["牛魔王", "铁扇公主"]); // ["孙悟空", "猪八戒", "沙和尚", "唐僧", "沙和尚", "蜘蛛精", "白骨精", "牛魔王", "铁扇公主"]

(4)indexOf():

  • 获取元素在数组中第一次出现的索引
  • 参数:要查询的元素;查询你的起始位置
const arr = ["孙悟空", "猪八戒", "沙和尚", "唐僧", "沙和尚"];
let result = arr.indexOf("沙和尚"); // 2
result = arr.indexOf("沙和尚", 3); // 4

(5)lastIndexOf():

  • 获取元素在数组中最后一次出现的位置
  • 参数:要查询的元素;查询你的起始位置
const arr = ["孙悟空", "猪八戒", "沙和尚", "唐僧", "沙和尚"];
let result = arr.lastIndexOf("沙和尚"); // 4
result = arr.lastIndexOf("沙和尚", 3); // 2

indexOf()和lastIndexOf()返回值,找到了则返回元素的索引,没找到返回-1

(6)join():

  • 将一个数组中的元素链接为一个字符串
  • 可以指定一个字符串作为连接符
const arr = ["孙悟空", "猪八戒", "沙和尚", "唐僧", "沙和尚"];
let result = arr.join(); // 孙悟空,猪八戒,沙和尚,唐僧,沙和尚
result = arr.join("|"); // 孙悟空|猪八戒|沙和尚|唐僧|沙和尚

(7)slice():

  • 用来截取数组(非破坏性方法)
  • 参数:
    (1)第1个参数为截取的起始位置(包括该位置)
    (2)第2个参数为截取的结束位置(不包括该位置)
    (3)第2个参数可以省略不写,如果省略则会一直截取到最后
    (4)参数可以为负值
    (5)两个参数都不写,则可以对数组进行浅拷贝(浅复制)
const arr = ["孙悟空", "猪八戒", "沙和尚", "唐僧"];
let result = arr.slice(0, 2); // ['孙悟空', '猪八戒']
result = arr.slice(1, 3); // ['猪八戒', '沙和尚']
result = arr.slice(2); // ['沙和尚', '唐僧']
result = arr.slice(1, -1); // ['猪八戒', '沙和尚']
result = arr.slice(); // ["孙悟空", "猪八戒", "沙和尚", "唐僧"]

2. 破坏性方法

(1)push()

  • 向数组的末尾添加一个或多个元素

标签:arr,孙悟空,猪八戒,JavaScript,沙和尚,笔记,result,数组
From: https://www.cnblogs.com/zibocoder/p/17064752.html

相关文章

  • 编译snowboy 笔记
    1.安装依赖sudoapt-getinstallpulseaudiosoxpython3-pyaudioswiglibatlas-base-devpython3-dev2.获取源代码gitclonehttps://github.com/Kitt-AI/snowboy.git......
  • 《RPC实战与核心原理》学习笔记Day5
    06|RPC实战:剖析gRPC源码,动手实现一个完整的RPC我们通过动态代理技术,屏蔽RPC调用的细节,从而让使用者能够面向接口编程。什么是gRPC?gRPC是由Google开发并且开源的一款......
  • JavaScript对象的创建方式有几种?怎么用?
    JavaScript对象的创建方式有几种?怎么用?对象是JavaScript的基本数据类型,对象不仅是字符串到值的映射还保持自有属性,JavaScript对象可以从一个称为原型的对象继承属性,对象的方......
  • C语言数组和指针传参
    一、数组传参1.一维数组传参一维数组传参时,形参有两种表示方法,1.1.一维数组来接收实参的一维数组首地址(形参的数组在编译器眼里就是一个指针,[]里的数字可写可不写),1.2.一级......
  • AC 自动机学习笔记
    前置知识:KMP,trie。一.自动机这里的自动机都指有限状态自动机(DFA)。一个DFA可以理解为一张有向图,由有限的状态(点),字母表,转移函数(边),开始状态与终止状态(起点,终点)组成。AC......
  • 学习笔记——SpringMVC拦截器的两种装配方式;SpringMVC拦截器工作原理;SpringMVC中的异
    2023-01-22 一、SpringMVC拦截器的两种装配方式1、全局装配(放置在springmvc.xml中)<!--装配拦截器--><!--全局装配--><mvc:interceptors><ref......
  • 数据结构笔记(一)
    程序=数据结构+算法数据结构(C语言版)(第2版)https://weread.qq.com/web/reader/b57320b071db572cb578fb5数据结构与算法基础(青岛大学-王卓)https://www.bilibili.com/video......
  • Elasticsearch 核心技术与实战 学习笔记
    分片的设定对于生产环境中分片的设定,需要提前做好容量规划分片数设置过小导致后续无法增加节点实现水品扩展单个分片的数据量太大,导致数据重新分配耗时分片数设......
  • JavaScript中的空值合并操作符【??】和可选链操作符【?.】的理解和使用
    参考:http://t.csdn.cn/5700Y??-空值合并操作符结构:eg:letres=num01??num02;??当左侧的变量为null或undefined的时,返回左侧num02否则返回自身num01(num01相当于nu......
  • 数论笔记
    ·质数素数定理:设\(x\geq1\),以\(\pi(x)\)表示不超过\(x\)的素数的个数。当\(x\rightarrow\infty\)时,\(\pi(x)\to\dfrac{x}{\ln(x)}\)质数筛法1.埃式......