首页 > 其他分享 >以下哪些Array对象的方法不会更改原有数组?

以下哪些Array对象的方法不会更改原有数组?

时间:2023-11-10 17:45:35浏览次数:29  
标签:sort map 函数 更改 改变 数组 Array array

以下哪些Array对象的方法不会更改原有数组?

A
concat()
B
splice()
C
map()
D
sort()

正确答案:AC

会改变数组的方法:
push()
pop()
shift()
unshift()
splice()
sort()
reverse()
forEach()

不会改变数组的方法:
filter()
concat()
slice()
map()

concat函数连接多个array,不改变原array,返回连接的结果

map函数对array中的每一项执行指定函数,将每一项执行的结果组成新的array返回

sort() 方法用原地算法对数组的元素进行排序,并返回数组,所以会改变原数组

splice函数对array进行操作,会改变array

一般在使用sort或者reverse等可以改变数组内顺序的函数时,我们是不需要赋值给新的变量的,直接a.sort()即可,数组内的顺序已经改变了

如果想要想要将返回值赋值给变量b,如图所示,b===a,所以sort函数并没有返回一个新的数组

本题”是否更改原始数组“本质上问的不是数组的值发生变化了没有,而是是不是返回了新的数组,所以不选sort

标签:sort,map,函数,更改,改变,数组,Array,array
From: https://www.cnblogs.com/longmo666/p/17824655.html

相关文章

  • Go语言中切片和数组有什么区别
    在Go语言中,数组的结构非常简单,它由两个部分组成:数据类型(DataType):数组中包含的元素的数据类型是固定的,所有元素必须具有相同的数据类型。这意味着一个数组可以包含整数、浮点数、字符串或其他数据类型,但所有元素的类型必须一致。长度(Length):数组的长度是在声明时指定的,它表示数组中......
  • 已知数组arr = [2,20,3,12,9],现在要对数组进行遍历,只要数组存在大于10的元素,则输出tru
    Avarres=arr.filter((val1,val2)=>{returnval1>10;})console.log(res);Bvarres=arr.some((val1,val2)=>{returnval1>10;})console.log(res);Cvarres=arr.every((val1,val2)=>{returnval1>10;})console.log(res);Dvarres......
  • "+new Array(017)" 这段代码输出为 NaN
    首先,前面+是一元运算符,相当于我们说的正负,无运算效果,但是可以将字符串等转为number类型。此题中017其实是八进制,故而是是Array(15)。这里相当于对于一个未赋值但是长度为15的数组进行number类型转化,其结果为NaN八进制的17转为二进制:001111,再转为十进制的15(8+4+2+1)+运算符......
  • ALLEGRO17.4封装更改了之后怎么更新到PCB里去呢?
    Allegro中如何更新PCB封装,在我们导入原理图网表,PCB的封装是必不可少的,有些封装导进PCB里发现有问题,那要怎么更新呢,下面看下具体的操作步骤吧:第二步:UpdateModulesandSymbols对话框详解 更新封装的3D模型(UpdateSTEPmappingdataonly)更新器件封装时,保留器件焊盘的名称不......
  • 更改虚拟机ssh连接端口
    打开终端或命令提示符。使用文本编辑器(如nano、vim等)打开SSH配置文件。在大多数Linux发行版中,该文件位于/etc/ssh/sshd_config。例如,在Ubuntu和Debian上,可以使用以下命令打开文件:sudonano/etc/ssh/sshd_config在文件中找到并修改以下行:#Port22将其更改为所需的端口......
  • 使用sizeof()和strlen()去计算【数组】和【指针】的大小
    (目录)一、知识回顾1、回顾sizeof()、strlen的作用:sizeof()是用来求取变量或者类型所占内存空间的大小(单位:字节)。sizeof计算的是占用内存空间的大小,单位是字节,不关注内存中到底存放的是什么。sizeof不是函数,是操作符strlen()是一个库函数是专门用来计算字符串长度的,在......
  • 数组&队列&关联数组的总结
    定宽数组:可以直接赋值,也可以先声明再赋值其中还有多维数组intarray2[0:7][0:3];intarray3[8][4];//先个后位intascend[4]='{0,1,2,3};intdescend[5];descend='{4,3,2,1,0};descend[0:2]='{5,6,7};ascend='{4{8}};descend='{9,8,default:-1};数组的声明全在左......
  • 深层次分析字符数组和字符串的区别是什么?
    前言(1)休闲时刻刷B站,看到一个卖课的,发视频问,chararr1[]={‘H’,‘E’,‘L’,‘L’,‘O’};和chararr2[]=“HELLO”;区别是什么。(2)看那个卖课博主一顿分析,最后成功得出:字符串比字符数组末尾多一个’\0’。(3)很好,成功浪费我生命的3分钟。无语,就这水平还卖课。如果各位有幸看到这货,......
  • 剑指 Offer 66. 构建乘积数组
    文章目录题目描述思路分析完整代码题目描述给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B[i]的值是数组A中除了下标i以外的元素的积,即B[i]=A[0]×A[1]×…×A[i-1]×A[i+1]×…×A[n-1]。不能使用除法。思路分析将所有的数都乘起来得到一个总乘积,然后求......
  • matlab将数组值划分为两类
    例如:大于0的处理为1,小于0的处理为-1.当然,可以选择循环结构和选择结构,但是效率会很低。这里直接使用逻辑语句完成。%不使用循环语句,将数组内值划分为两类clc;clearvars;a=[-0.1422,-0.0433,0.1131,0.0583,0.0109,-0.0863,0.0411,-0.0641,-0.1055,......