记录JS常用数组方法

本文介绍了JavaScript中数组的基本操作方法,包括添加、删除元素的方法如push()、pop()、unshift()、shift();数组排序方法sort();查找元素方法indexOf()、lastIndexOf();以及数组的连接concat()和切片slice()等。

1.给数组新增元素push()方法,在数组末尾添加,返回新数组

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

结果是:[1,2,3,4,2]

2.给数组移除元素pop()方法,不需要传参数,返回新数组

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

结果是:[1,2]

便于记忆,将push()和pop()放到一块对比,push()需要传入新添加的元素,pop()删除数组最后一项,不需要传入参数。

3.给数组新增元素unshift()方法,在数组前面添加,返回新数组

var arr = [1,2,3];
arr.unshift(4,5);
console.log(arr);

结果是:[4,5,1,2,3]

4.给数组移除元素shift()方法,不需要传参数,返回新数组

var arr = [1,2,3];
arr.shift();
console.log(arr);

结果是:[2,3]

便于记忆,可以将unshift()、shift()方法与push()、pop()这一组方法对比,两者传参及使用方法一致,前者从数组第一项开始,后者从数组最后一项开始

5.讲数组内的所有项反转,末尾项成为第一项,方法为reverse()

var arr = [1,2,3];
arr.reverse();
console.log(arr);

结果是:[3,2,1]

reverse()方法使用场景并不多,我们使用sort()方法更多一些。

6.sort()方法排序,可以传参数也可以不传参数,如果不传参数的话,数组会按照字符编码的顺序进行排序(并不会按照数值大小来排序)。如果我们想实现按照数值大小来排序的话,必须传入参数,我们可以传入一个排序函数来解决这个问题

function sortNum(a,b){
    return a-b;
}
var arr = [1,2,4,3,6,5];
arr.sort(sortNum);
console.log(arr);

结果是:[1,2,3,4,5,6]

如果需要降序排列的话,只需要将排序函数中的a-b换成b-a即可

7.indexOf()和lastIndexOf()方法用来查找元素在数组中所在的位置,indexOf(item,[start]),lastIndexOf(item,[start])

var arr = [2,4,4,5,7,2,5,3,1,8,9];
console.log(arr.indexOf(3)); //7
console.log(arr.lastIndexOf(5));//6
console.log(arr.indexOf(4,2));//2
console.log(arr.lastIndexOf(4,1));//1

lastIndexOf()中的start为查找的起始位置,返回的结果从起始位置开始往前查找,找到的第一个匹配项,这里需要注意的是,lastIndexOf()应用范围并不多见,我们需要把常用的indexOf()记住

8.数组的连接使用的是concat(),该方法并不会改变原来的数组

var arr = [1,2,3];
var newArr = arr.concat(11,[222,33]);
console.log(arr);//[1,2,3]
console.log(newArr);[1,2,3,11,222,33]

9.数组分割方法slice(),slice(start,[end]),使用该方法后,返回一个新数组,包含从start到end(不包含该元素)的数组

var arr = [1,2,3,4,5];
var newArr = arr.slice(2);
var newArr1 = arr.slice(2,4);
console.log(arr);//[1,2,3,4,5]
console.log(newArr);//[3,4,5]
console.log(newArr1);//[3,4]

从结果可以看出,slice()并不会改变原有数组









考虑柔性负荷的综合能源系统低碳经济优化调度【考虑碳交易机制】(Matlab代码实现)内容概要:本文围绕“考虑柔性负荷的综合能源系统低碳经济优化调度”展开,重点研究在碳交易机制下如何实现综合能源系统的低碳化与经济性协同优化。通过构建包含风电、光伏、储能、柔性负荷等多种能源形式的系统模型,结合碳交易成本与能源调度成本,提出优化调度策略,以降低碳排放并提升系统运行经济性。文中采用Matlab进行仿真代码实现,验证了所提模型在平衡能源供需、平抑可再生能源波动、引导柔性负荷参与调度等方面的有效性,为低碳能源系统的设计与运行提供了技术支撑。; 适合人群:具备一定电力系统、能源系统背景,熟悉Matlab编程,从事能源优化、低碳调度、综合能源系统等相关领域研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①研究碳交易机制对综合能源系统调度决策的影响;②实现柔性负荷在削峰填谷、促进可再生能源消纳中的作用;③掌握基于Matlab的能源系统建模与优化求解方法;④为实际综合能源项目提供低碳经济调度方案参考。; 阅读建议:建议读者结合Matlab代码深入理解模型构建与求解过程,重点关注目标函数设计、约束条件设置及碳交易成本的量化方式,可进一步扩展至多能互补、需求响应等场景进行二次开发与仿真验证。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值