JavaScript-JS数组方法有哪些_js数组方法 包含,管理系统代码结构

本文详细介绍了JavaScript中Array对象的join(),reverse(),sort(),concat()和slice()方法的用法和示例,以及它们在实际开发中的应用场景,特别关注于如何在毕业设计项目中有效利用这些工具。
摘要由CSDN通过智能技术生成

var a = [1, 2, 3]; // 创建一个包含三个元素的数组
a.join(); // => “1,2,3”
a.join(" “); // => “1 2 3”
a.join(”"); // => “123”
var b = new Array(10); // 长度为10的空数组
b.join(‘-’); // => “---------”:9个连字号组成的字符串

Array.join()方法是String.split()方法的逆向操作,后者是将字符串分割成若干块来创建一个数组。

Array.reverse()

Array.reverse()方法将数组中的元素颠倒顺序,返回逆序的数组。它采取了替换;换句话说,它不通过重新排列的元素创建新的数组,而是在原先的数组中重新排列它们。例如,下面的代码使用reverse()和join()方法生成字符串“3,2,1”:

var a = [1,2,3];
a.reverse().join() // ⇒ “3,2,1”,并且现在的a是[3,2,1]

Array.sort()

Array.sort()方法将数组中的元素排序并返回排序后的数组。当不带参数调用sort()时,数组元素以字母表顺序排序(如有必要将临时转化为字符串进行比较):

var a = new Array(“banana”, “cherry”, “apple”);
a.sort()
var s = a.join(“,”); // s == “apple,banana,cherry”

如果数组包含undefined元素,它们会被排到数组的尾部。

为了按照其他方式而非字母表顺序进行数组排序,必须给sort()方法传递一个比较函数。该函数决定了它的两个参数在排好序的数组中的先后顺序。假设第一个参数应该在前,比较函数应该返回一个小于0的数值。反之,假设第一个参数应该在后,函数应该返回一个大于0的数值。并且,假设两个值相等(也就是说,它们的顺序无关紧要),函数应该返回0.因此,例如,用数值大小而非字母表顺序进行数组排序,代码如下:

var a = [33, 4, 1111, 222];
a.sort(); // 字母表顺序: 1111, 222, 33, 4
a.sort(function (a, b) { // 数值顺序: 4, 33, 222, 1111
return a - b; // 根据顺序,返回,返回负数、0、正数
});
a.sort(function(a,b){return b-a}); // 数值大小相反的顺序

注意,这里使用匿名函数表达式非常方便。既然比较函数只使用一次,就没有必要给他们命名了。

另外一个数组排序的例子,也许需要对一个字符串数组执行不区分大小写的字母表排序,比较函数首先将参数都转化为小写字符串(使用toLowerCase()方法),再开始比较:

var a = [‘ant’, ‘Bug’, ‘cat’, ‘Dog’];
a.sort(); // 区分大小写的排序:[‘Bug’, ‘Dog’, ‘ant’, ‘cat’]
a.sort(function (s, t) { // 不区分大小写的排序
var a = s.toLowerCase();
var b = t.toLowerCase();
if (a < b) return -1;
if (a > b) return 1;
return 0;
}); // => [‘ant’, ‘Bug’, ‘cat’, ‘Dog’]

Array.concat()

Array.concat()方法创建并返回一个新数组,它的元素包括调用concat()的原始数组的元素和concat()的每个参数。如果这些数组中的任何一个自身是数组,则连接的是数组的元素,而非数组本身。但要注意,concat()不会递归扁平化数组的数组。concat()也不会修改调用的数组。下面有一些示例:

var a = [1,2,3];
a.concat(4, 5); // 返回 [1,2,3,4,5]
a.concat([4,5]); // 返回 [1,2,3,4,5]
a.concat([4,5], [6,5]); // 返回 [1,2,3,4,5,6,7]
a.concat(4, [5,[6,7]]); // 返回 [1,2,3,4,5,[6,7]]

Array.slice()

Array.slice()方法返回指定数组的一个片段或子数组。它的两个参数分别指定了片段的开始和结束的位置。返回的数组包含第一个参数指定的位置和所有到但不含第二个参数指定的位置之间的所有数组元素。如果只指定一个参数,返回的数组将包含从开始位置到数组结尾的所有元素。例如,参数-1指定了最后一个元素,而-3指定了倒数第三个元素。注意,slice()不会修改调用的数组。下面有一些示例:

var a = [1,2,3,4,5];
a.slice(0,3); // 返回 [1,2,3]
a.slice(3); // 返回 [4,5]
a.slice(1,-1); // 返回 [2,3,4]

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数同学面临毕业设计项目选题时,很多人都会感到无从下手,尤其是对于计算机专业的学生来说,选择一个合适的题目尤为重要。因为毕业设计不仅是我们在大学四年学习的一个总结,更是展示自己能力的重要机会。

因此收集整理了一份《2024年计算机毕业设计项目大全》,初衷也很简单,就是希望能够帮助提高效率,同时减轻大家的负担。
img
img
img

既有Java、Web、PHP、也有C、小程序、Python等项目供你选择,真正体系化!

由于项目比较多,这里只是将部分目录截图出来,每个节点里面都包含素材文档、项目源码、讲解视频

如果你觉得这些内容对你有帮助,可以添加VX:vip1024c (备注项目大全获取)
img

截图出来,每个节点里面都包含素材文档、项目源码、讲解视频**

如果你觉得这些内容对你有帮助,可以添加VX:vip1024c (备注项目大全获取)
[外链图片转存中…(img-ZQD7ikZo-1712522236050)]

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值