原生JS中数组常见的方法

原生JS中数组常见的方法,第1张

1.

shift():删除数组中第一个元素,并将长度减1,下面举例:

var arr = ['王思聪', '孙一宁', '刘强东', '奶茶', '签字哥', '都美竹']

 var res = arr.shift()

console.log(res)  //打印出来返回值是被删除的数组元素

2.

 pop():删除数组中最后一个元素,并将长度减1,下面举例:

var arr = ['王思聪', '孙一宁', '刘强东', '奶茶', '签字哥', '都美竹']

 var res = arr.pop()

console.log(res) //打印出来返回值是删除的数组元素

3.

unshift():往数组前面添加一个或多个数组元素,长度要改变,下面举例:

var res = arr.unshift('张姨', 18)

  console.log(res)

   console.log(arr) // 返回值是增加后数组的长度

4.

push():往数组结尾添加一个或多个数组元素,长度要改变

var res = arr.push('随便', '哈哈')

console.log(arr)

console.log(res)

5.

为了更好的代入,下面我们来看一个综合的列子:

var arr = [0, 1, 'a', 0, 66, 0, 0]

要求将数组中的0项去掉,将不为0的值存入一个新的数组,生成新的数组

声明一个新的数组

var newArr = []

遍历

for(var i=0i<arr.lengthi++){

            //把0的数组元素删除掉

            if(arr[i]==0){

                continue

            }

            //把这些数据添加到新的数组

            newArr.push(arr[i])

        }

        console.log(newArr)  //最后输出查看结果

6.

concat() : 方法用于连接两个或多个数组, 不改变原数组。返回一个新的数组

var arrName1 = ['签字哥', '李某迪', '波哥', '王思聪']

var arrName2 = ['马云', '马化腾', '王健林', '卢本伟']

var newData = arrName1.concat(arrName2)

console.log(newData)

7.

reverse()  逆向排序, 原数组也被逆向排序了(倒置)

var numArr = [10, 9, 8, 7, 6, 5, 11]

var res = numArr.reverse()

console.log(res)

console.log(numArr)

8.

toString()  将数组转成字符串,推荐使用

var numArr = [10, 9, 8, 7, 6, 5, 11]

toString()属于一个对象的方法

var res = numArr.toString()

console.log(res)

String它是强制数据类型转换的方法,它不属于数组这个对象

9.

join(“拼接符”)将数组转成字符串,中间以拼接符连接

var numArr = [10, 9, 8, 7, 6, 5, 11]

var res = numArr.join('&')

console.log(res)

10.

  slice(start,end):  不修改原数组, 将原数组中的指定区域数据提取出来。start开始 end结束。

            如果参数是负值表示从倒数开始。不含结束位置

                                   0         1        2(不包含结束位置)

 var arrName = ['签字哥', '李某迪', '波哥', '王思聪']

var res = arrName.slice(0, 2)

 console.log(res)

11.

splice

            删除:用于删除元素,两个参数,第一个参数(要删除第一项的位置),第二个参数(要删除的项数)

            插入:向数组指定位置插入任意项元素。三个参数,第一个参数(开始位置),第二个参数(0),第三个参数(插入的项)

            注意点:第二个参数(0)为0不会删除任何项

            替换:向数组指定位置插入任意项元素,同时删除任意数量的项,三个参数。第一个参数(起始位置),第二个参数(删除的项数),第三个参数(插入任意数量的项)

 var arrName = ['签字哥', '李某迪', '波哥', '王思聪']

       //删除

        //var res = arrName.splice(0, 3)

        //返回值是被删除的数组元素

        //console.log(res)

        //插入

        // arrName.splice(0, 0, '嘿嘿', '哈哈')

        // console.log(arrName)

       //替换

        arrName.splice(0, 2, '都美竹', 'hello')

        console.log(arrName)

数组中常用的方法有:

1、给数组末尾添加新内容的push方法;

2、删除数组最后一项的pop方法;

3、删除数组第一项的shift方法;

4、向数组首位添加新内容unshift方法;

5、按照条件查找出其中的部分内容。

数组(Array)是有序的元素序列。若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。用于区分数组的各个元素的数字编号称为下标。数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按有序的形式组织起来的一种形式。这些有序排列的同类数据元素的集合称为数组。数组是用于储存多个相同类型数据的集合。

在C语言中, 数组[2]属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。

关于可变长数组(VLA)的问题:原来的C89标准中是不允许可变长数组出现的,但是在C99标准中,加入了对VLA的支持,但是支持的编译器不多,而且由于栈溢出的安全问题,没有太多的人敢用这个可变长数组,所以在C11标准中又把它规定为可选实现的功能了。

如果有过用其它语言编程的经历,那么想必会熟悉数组的概念。由于有了数组,可以用相同名字引用一系列变量,并用数字(索引)来识别它们。在许多场合,使用数组可以缩短和简化程序,因为可以利用索引值设计一个循环,高效处理多种情况。数组有上界和下界,数组的元素在上下界内是连续的。因为 Visual Basic对每一个索引值都分配空间,所以不要不切实际声明一个太大的数组。

此处数组是程序中声明的变量数组。它们不同于控件数组,控件数组是在设计时通过设置控件的 Index 属性规定的。变量数组总是连续的;与控件数组不同的是,不能从一个数组的中部加载或卸载数组元素。

C语言中提供了存储说明符auto,register,extern,static说明的四种存储类别。四种存储类别说明符有两种存储期:自动存储期和静态存储期。其中auto和register对应自动存储期。具有自动存储期的变量在进入声明该变量的程序块是被建立,它在该程序块活动时存在,退出该程序块时撤销。

在函数内部定义的变量成为局部变量。在某些C语言教材中,局部变量称为自动变量,这就与使用可选关键字a u t o定义局部变量这一作法保持一致。局部变量仅由其被定义的模块内部的语句所访问。换言之,局部变量在自己的代码模块之外是不可知的。切记:模块以左花

括号开始,以右花括号结束。

对于局部变量,要了解的最重要的东西是:它们仅存在于被定义的当前执行代码块中,即局部变量在进入模块时生成,在退出模块时消亡。

定义局部变量的最常见的代码块是函数。

整数变量x被定义了两次,一次在func1()中,一次在func2()中。func1()和func2()中的x互不相关。其原因是每个x作为局部变量仅在被定义的块内可知。

语言中包括了关键字auto,它可用于定义局部变量。但自从所有的非全局变量的缺省值假定为auto以来,auto就几乎很少使用了,


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11334117.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存