目录

  • JS数组Array
    • 新建数组
      • 一维数组
      • 二维数组
    • reverse()
    • 在数组末尾插入:push()
    • 在数组末尾删除:pop()
    • 在数组开头插入:unshift()
    • 从数组开头删除一个元素shift()
    • splice()
  • Map
  • Set

JS数组Array

判断数组相等不能用===,要循环判断

新建数组

一维数组

  1. 用数组字面量 []:const arr2 = [1, 2, 3];
  2. 用 new Array() 构造函数:const arr3 = new Array(1, 2, 3);

二维数组

const rows = 3, cols = 4;
const matrix = Array.from({ length: rows }, () => Array(cols).fill(0));
console.log(matrix);
// [
//   [0, 0, 0, 0],
//   [0, 0, 0, 0],
//   [0, 0, 0, 0]
// ]

reverse()

reverse() 是数组(Array)的方法,用于反转数组的顺序

const arr = [1, 2, 3, 4];
const reversed = arr.reverse();console.log(reversed); // [4, 3, 2, 1]
console.log(arr);      // [4, 3, 2, 1] —— 原数组也变了

在数组末尾插入:push()

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

在数组末尾删除:pop()

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

在数组开头插入:unshift()

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

从数组开头删除一个元素shift()

const arr = [1, 2, 3];
const removed = arr.shift();console.log(removed); // 1
console.log(arr);     // [2, 3]

splice()

array.splice(start, deleteCount, item1, item2, …)
start: 插入的起始位置索引
deleteCount: 删除元素个数(0 表示不删除)
item1, item2…: 要插入的元素

const arr = [1, 2, 3];
arr.splice(1, 0, 'a'); // 在索引1处插入'a'
console.log(arr); // [1, 'a', 2, 3]

Map

//创建Map
const map = new Map();
//添加元素
map.set('name', 'Alice');
map.set('age', 25);
//读取元素
map.get('name'); // "Alice"
//判断是否存在键
map.has('age'); // true
//删除键
map.delete('name'); // true

遍历

for (const [key, value] of map) {console.log(`${key} = ${value}`);
}

也可以从二维数组初始化

const map2 = new Map([['x', 10],['y', 20]
]);

Set

//创建set
const mySet = new Set();
//添加元素
mySet.add(1);
mySet.add(2);
console.log(mySet); // Set(2) { 1, 2 }
//判断是否存在
set.has(1);
//删除元素
set.delete(2);

遍历set

for (const value of set) {console.log(value);
}

初始化 Set(自动去重)

const set2 = new Set([1, 2, 2, 3]); // Set(3) {1, 2, 3}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/908112.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/908112.shtml
英文地址,请注明出处:http://en.pswp.cn/news/908112.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

uniapp-商城-77-shop(8.2-商品列表,地址信息添加,级联选择器picker)

地址信息,在我们支付订单上有这样一个接口,就是物流方式,一个自提,我们就显示商家地址。一个是外送,就是用户自己填写的地址。 这里先说说用户的地址添加。需要使用到的一些方式方法,主要有关于地址选择器,就是uni-data-picker级联选择。 该文介绍了电商应用中地址信息处…

网页前端开发(基础进阶3--Vue)

Vue3 Vue是一款用于构建用户界面的渐进式的JavaScript框架。 Vue由2部分组成:Vue核心包,Vue插件包 Vue核心包包含:声明式渲染,组件系统。 Vue插件包:VueRouter(客户端路由),Vuex…

大模型相关技术综述

多模态大模型&大模型训练语料持续迭代 已经开始整理多模态-视觉部分: 主要分为一下几块 多模态信息压缩模型(clip、vit、swiT) 生成模型(vae、gan、flow、ddpm、sde…) 其它多模态大模型(语音、视频、slam、3…

Vue3中Ant-design-vue的使用-附完整代码

前言 首先介绍一下什么是Ant-design-vue Ant Design Vue 是基于 Vue 3 的企业级 UI 组件库(同时兼容 Vue 2),是蚂蚁金服开源项目 Ant Design 的 Vue 实现版本。它遵循 Ant Design 的设计规范,提供丰富的组件和高质量的设计体系&…

建造者模式:优雅构建复杂对象

引言 在软件开发中,有时我们需要创建一个由多个部分组成的复杂对象,这些部分可能有不同的变体或配置。如果直接在一个构造函数中设置所有参数,代码会变得难以阅读和维护。当对象构建过程复杂,且需要多个步骤时,我们可…

如何通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式(并进行了训练、推理)

计划让AI帮助编程使用TabPFN模型进行股价推理 原计划提问的prompt 如何通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式 本意是想让AI分步执行,先处理股票数据,然后再进行模型训练,结果豆包超…

[蓝桥杯]最大化股票交易的利润

最大化股票交易的利润 题目描述 实现一个算法寻找最大化股票交易利润的策略。介绍如下: 股票价格每天都在变化,以数组的索引表示交易日,以数组的元素表示每天的股票价格。可以通过买入和卖出获得利润。一天只能进行一次买入或卖出操作&…

URL 结构说明+路由(接口)的认识

一、URL 结构说明 以这个为例:http://127.0.0.1:5000/zhouleifeng 1.组成部分: http://:协议 127.0.0.1:主机(本地地址) :5000:端口号(Flask 默认 5000) /zhouleifeng&#xff1a…

微服务商城-用户微服务

数据表 用户表 CREATE DATABASE user; USE user;CREATE TABLE user (id bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 用户ID,username varchar(50) NOT NULL DEFAULT COMMENT 用户名,password varchar(50) NOT NULL DEFAULT COMMENT 用户密码,MD5加密…

Java面试题及答案整理( 2025年最新版,持续更新...)

最近发现网上很多Java面试题都没有答案,所以花了很长时间搜集整理出来了这套Java面试题大全,希望大家能够喜欢! 注:篇幅有限,资料已整理成文档,后台si我666,我一个个发! 这套面试文…

[论文阅读]PPT: Backdoor Attacks on Pre-trained Models via Poisoned Prompt Tuning

PPT: Backdoor Attacks on Pre-trained Models via Poisoned Prompt Tuning PPT: Backdoor Attacks on Pre-trained Models via Poisoned Prompt Tuning | IJCAI IJCAI-22 发表于2022年的论文,当时大家还都在做小模型NLP的相关工作(BERT,Ro…

Redis最佳实践——性能优化技巧之集群与分片

Redis集群与分片在电商应用中的性能优化技巧 一、Redis集群架构模式解析 1. 主流集群方案对比 方案核心原理适用场景电商应用案例主从复制读写分离数据冗余中小规模读多写少商品详情缓存Redis Sentinel自动故障转移监控高可用需求场景订单状态缓存Redis Cluster原生分布式分片…

Vue 生命周期全解析:从创建到销毁的完整旅程

Vue 生命周期是每个 Vue 开发者必须深入理解的核心概念之一。它定义了组件从创建、挂载、更新、销毁的整个过程,以及在这个过程中各个阶段提供的钩子函数。掌握生命周期不仅能帮助你理解 Vue 的工作原理,还能让你在合适的时机执行特定的操作,…

【Rust 高级trait】Rust trait的一些高级用法解密

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…

联想电脑护眼卫士与系统颜色配置(X-Rite)冲突 | 显示设置频繁变换色阶 - 解决方案

联想电脑护眼卫士与系统颜色配置X-Rite冲突 | 显示设置频繁变换色阶 - 解决方案 前言方案1:解决联想护眼卫士方案2:解决系统颜色配置(X-Rite) 前言 自带X-Rite软件的联想电脑(以拯救者Y9000P,Win11系统为例)&#xff…

MySQL中SELECT查询的执行顺序

MySQL中SELECT查询的执行顺序 在日常的数据库开发中,我们经常会写各种复杂的SELECT查询语句。然而,很多开发者对于MySQL实际执行这些查询的顺序并不完全了解。理解查询的执行顺序不仅有助于编写更高效的SQL语句,还能帮助我们更好地优化查询性…

es 的字段类型(text和keyword)

Text 当一个字段是要被全文检索时,比如 Email 内容、产品描述,这些字段应该使用 text 类型。设置 text 类型以后,字段内容会被分析,在生成倒排索引之前,字符串会被分析器分词。text类型的字段不用于排序,很…

MySQL安装及启用详细教程(Windows版)

MySQL安装及启用详细教程(Windows版) 📋 概述 本文档将详细介绍MySQL数据库在Windows系统下的下载、安装、配置和启用过程。 📥 MySQL下载 官方下载地址 官方网站: https://dev.mysql.com/downloads/社区版本: https://dev.my…

Linux下使用nmcli连接网络

Linux下使用nmcli连接网络 介绍 在使用ubuntu系统的时候,有时候不方便使用桌面,使用ssh远程连接,可能需要使用nmcli命令来连接网络。本文将介绍如何使用nmcli命令连接网络。nmcli 是 NetworkManager 的命令行工具,用于管理网络连…

Python----循环神经网络(BiLSTM:双向长短时记忆网络)

一、LSTM 与 BiLSTM对比 1.1、LSTM LSTM(长短期记忆网络) 是一种改进的循环神经网络(RNN),专门解决传统RNN难以学习长期依赖的问题。它通过遗忘门、输入门和输出门来控制信息的流动,保留重要信息并丢弃无关…