探索JS数组新方法:

article/2025/7/23 18:54:22

js数组新方法:Array.with()、Array.toSorted()、Array.toReversed() 和 Array.toSpliced()

在Javascript中数组作为引用类型,如果我们想在不修改原始数组的情况下执行splicesort,reverse等方法,那么我们必须首先创建原始数组的副本, 这样我们就不会修改原始数组。

1,Array.with(index, value)-不改变原数组

  • with() 通过返回一个指定索引处的值被新值替换的新数组,来改变数组中指定索引处的值。
  • with() 方法永远不会产生稀疏数组。如果原数组是稀疏的,新数组对应的空白索引位置会替换为 undefined

2,Array.toSorted()-不改变原数组

  • 方法是 sort()方法的复制方法版本。它返回一个新数组,其元素按升序排列。 

3,Array.toSpliced() -不改变原数组

  • toSpliced()  方法是 splice()方法的复制版本。它返回一个新数组,并在给定的索引处删除和/或替换了一些元素。

区别:Array.toSpliced()和Array.splice

  • Array.splice会返回将截取出来的数据组成新数组,并且修改原数组(经过截取操作的数组
  • Array.toSpliced不会改变原数组,会返回经过截取操作的数组


http://www.hkcw.cn/article/bEcJDyeNPw.shtml

相关文章

电子书阅读器:基于UDP的网络日志调试系统

目录 为什么要引入网络编程进行远程打印? 框架与管理 debug层结构 stdout.c netprint.c(重头戏) 明确两个问题:udp和server端的选择 核心机制 实现细节 debug_manager.c netprint_client.c 为什么要引入网络编程进行远程…

《HelloGitHub》第 110 期

兴趣是最好的老师,HelloGitHub 让你对开源感兴趣! 简介 HelloGitHub 分享 GitHub 上有趣、入门级的开源项目。 github.com/521xueweihan/HelloGitHub 这里有实战项目、入门教程、黑科技、开源书籍、大厂开源项目等,涵盖多种编程语言 Python、…

⼤模型驱动的DeepInsight Copilot在蚂蚁的技术实践

本文整理自潘兰天(蚂蚁数据智能团队数据分析平台技术专家)在DA数智大会2025上海站的演讲实录。 本文围绕AI技术在数据分析领域的应用及DeepInsight Copilot产品展开。DeepInsight是一款蚂蚁长期深耕数据分析领域的BI产品,本文首先介绍了DeepInsight Copi…

小黑大语言模型应用探索:langchain智能体构造源码demo搭建1(初步流程)

导入工具包 rom langchain_core.tools import BaseTool from typing import Sequence, Optional, List from langchain_core.prompts import BasePromptTemplate import re from langchain_core.tools import tool from langchain_core.prompts.chat import (ChatPromptTempla…

在大型中实施访问控制 语言模型

大家读完觉得有帮助记得关注!!! 抽象 在企业设置中,组织数据是隔离的、孤立的 并受到精心设计的访问控制框架的精心保护。 如果 LLM 对 siloed data serve 请求进行微调,用于下游任务, 来自具有不同访问权限…

边缘计算网关在管网压力远程调控中的通信协议配置

一、项目背景 在现代城市供水系统中,恒压供水是确保居民用水稳定的关键。传统的恒压供水系统通常依赖人工巡检和本地监控,这种方式存在实时性差、效率低、故障响应慢等问题。随着物联网技术的发展,某大型城市供水企业为了实现对供水系统的实…

51. N-Queens

目录 题目描述 方法一、回溯每次判断是否合法 方法二、回溯哈希 方法三、回溯位运算 题目描述 51. N-Queens 方法一、回溯每次判断是否合法 class Solution {vector<vector<string>> res;vector<string> chessboard; public:vector<vector<strin…

西蒙诺维奇-炮弹导体粗糙度模型揭秘

这篇论文的作者&#xff0c;“导体表面粗糙度建模&#xff1a;从”雪球“到”炮弹“&#xff0c;[1] 认为仅凭数据表不可能对传输线进行准确建模&#xff0c;并且似乎暗示&#xff0c;因为我事先测量了数据&#xff0c;所以我神奇地”调整“了 Rz 参数&#xff0c;以获得与 EDI…

VRRP 原理与配置:让你的网络永不掉线!

VRRP 原理与配置&#xff1a;让你的网络永不掉线&#xff01; 一. VRRP 是什么&#xff0c;为什么需要它&#xff1f;二. VRRP 的核心概念三. VRRP 的工作原理四. 华为设备 VRRP 配置步骤 &#xff08;主备模式&#xff09;4.1 拓扑示例4.2 &#x1f6e0; 配置步骤 五. VRRP 配…

【深度剖析】义齿定制行业数字化转型模式创新研究(上篇3:数字化转型动机分析)

数字化转型正在重塑义齿行业的生态格局,但也面临技术融合与模式变革的深层挑战。当前,义齿定制行业正处于从传统手工制造向全流程数字化制造转型的关键阶段。3D扫描、CAD/CAM(计算机辅助设计与制造)、3D打印等技术的广泛应用,显著提升了义齿制作的精度和效率。传统石膏模型…

RustDesk 搭建自建服务器并设置服务自启动

目录 0. 介绍 1. 事前准备 1.1 有公网 ip 的云服务器一台 1.2 服务端部署包 1.3 客户端安装包 2. 部署 2.1 服务器环境准备 2.2 上传服务端部署包 2.3 运行 pm2 3. 客户端使用 3.1 安装 3.2 配置 3.2.1 解锁网络设置 3.2.2 ID / 中级服务器 3.3 启动效果 > …

Python训练营打卡Day40(2025.5.30)

知识点回顾&#xff1a; 彩色和灰度图片测试和训练的规范写法&#xff1a;封装在函数中展平操作&#xff1a;除第一个维度batchsize外全部展平dropout操作&#xff1a;训练阶段随机丢弃神经元&#xff0c;测试阶段eval模式关闭dropout # 先继续之前的代码 import torch import …

《智慧医疗分级评价方法及标准(2025版)》征求意见函全面解读:人工智能医疗应用的评价体系与指南方向

引言 智慧医疗作为医疗行业数字化转型的重要方向,正在通过人工智能等先进技术重塑医疗服务模式和流程。随着人工智能技术在医疗领域的广泛应用,建立科学、规范的评价体系对于推动智慧医疗健康发展具有重要意义。近期,国家卫生健康委发布了《智慧医疗分级评价方法及标准(20…

碰一碰发视频系统--基于H5场景开发

#碰一碰发视频# 旨在构建一个基于移动网页&#xff08;H5&#xff09;的视频“碰传”交互系统&#xff0c;提供类似华为/苹果设备 NFC 轻碰分享的便捷体验。其核心技术依赖于移动端可用的近场通信&#xff08;NFC 或 H5 相关 API&#xff09;和可靠的媒体数据传输方案。实现细节…

京东热点缓存探测系统JDhotkey架构剖析

热点探测使用场景 MySQL 中被频繁访问的数据 &#xff0c;如热门商品的主键 IdRedis 缓存中被密集访问的 Key&#xff0c;如热门商品的详情需要 get goods$Id恶意攻击或机器人爬虫的请求信息&#xff0c;如特定标识的 userId、机器 IP频繁被访问的接口地址&#xff0c;如获取用…

6年“豹变”,vivo S30系列引领手机进入场景“体验定义”时代

出品 | 何玺 排版 | 叶媛 5月29日晚&#xff0c;备受用户期待的vivo S30系列如约而至。 相比前几代S系列产品&#xff0c;S30系列变化显著&#xff0c;堪称“豹变”。首先&#xff0c;其产品打造思路发生了质变&#xff0c;产品体验更好&#xff0c;综合竞争力更为强。其次&a…

Visual Studio 2022 设置自动换行

Visual Studio 2022 设置自动换行 一、在 Visual Studio 菜单栏上&#xff0c;选择 工具>选项二、选择“文本编辑器”>“所有语言”>“常规” 全局设置此选项。 一、在 Visual Studio 菜单栏上&#xff0c;选择 工具>选项 二、选择“文本编辑器”>“所有语言”&…

视频监控汇聚平台EasyCVR安防小知识:如何通过视频融合平台解决信息孤岛问题?

一、项目背景与需求分析​ 随着数字化技术发展与网络带宽升级&#xff0c;视频技术应用场景不断拓展&#xff0c;视频监控、记录仪等多样化产品构建起庞大体系。但这些独立系统彼此割裂&#xff0c;形成信息孤岛。 在系统集成项目中&#xff0c;视频系统深度融合已成必然趋势…

Flutter 4.x 版本 webview_flutter 嵌套H5

踩坑早期版本 使用 WebView 代码如下 import package:flutter/material.dart; import package:webview_flutter/webview_flutter.dart;class HomePage extends StatelessWidget {const HomePage({super.key});overrideWidget build(BuildContext context) {return Scaffold(ap…

new和delete的理解

malloc、free和new、delete的区别 //malloc和free&#xff0c;称作c的库函数 //new和delete&#xff0c;称作运算符 /**********************************************/ //malloc按照字节开辟内存,返回值是void *,需要做类型强转 //仅开辟内存&#xff0c;不做初始化;malloc开…