1. 声明和初始化一个数组:
var array = []; // 声明一个空数组
var array = [1, 2, 3]; // 声明并初始化一个有元素的数组
  1. 获取数组长度:
var length = array.length; // 获取数组的长度
  1. 访问和修改数组元素:
var element = array[index]; // 获取指定索引位置的元素
array[index] = newValue; // 修改指定索引位置的元素的值
  1. 遍历数组:
array.forEach(item => {
// 遍历数组的每个元素,并执行相应的操作
});
  1. 添加和删除数组元素:
array.push(element); // 在数组末尾添加一个元素
array.pop(); // 删除数组末尾的一个元素
array.unshift(element); // 在数组开头添加一个元素
array.shift(); // 删除数组开头的一个元素
  1. 对数组进行排序:
array.sort(); // 升序排序数组元素
array.sort((a, b) => b - a); // 降序排序数组元素
  1. 过滤数组元素:
var filteredArray = array.filter(item => {
// 返回一个新的数组,其中包含符合条件的元素
return item > 3; // 例如,过滤出大于 3 的元素
});
  1. 查找数组元素:
var foundElement = array.find(item => {
// 返回数组中符合条件的第一个元素
return item === 3; // 例如,查找值为 3 的元素
});
  1. 判断数组是否包含某个元素:
var containsElement = array.includes(element); // 使用 includes 方法判断数组是否包含指定元素
  1. 搜索数组元素的索引:
var index = array.indexOf(element); // 返回数组中指定元素的索引值
var lastIndex = array.lastIndexOf(element); // 返回数组中指定元素的最后一个匹配的索引值
  1. 数组映射(Mapping):
var transformedArray = array.map(item => {
// 根据数组的每个元素进行转换,并返回一个新的数组
return item * 2; // 例如,将数组的每个元素乘以 2
});
  1. 数组的切片和连接:
var subArray = array.slice(startIndex, endIndex); // 从数组中提取指定范围的元素,返回一个新的数组
var concatenatedArray = array1.concat(array2); // 将两个数组连接起来,返回一个新的数组
  1. 数组的反转:
array.reverse(); // 反转数组的顺序,改变原数组
  1. 数组的去重:
var uniqueArray = Array.from(new Set(array)); // 将数组转换为 Set 对象,再将 Set 转换为数组,实现去重
  1. 用于过滤数组中的重复项:
var uniqueArray = array.filter(function(item, index, arr){
return arr.indexOf(item) === index;
});
  1. 用于对数组的所有元素应用一个函数:
array.forEach(function(item, index, arr){
console.log(item, index);
});
  1. 用于在数组中查找具有一定条件的值:
var result = array.find(function(item, index, arr) {
return item.name === 'user1'; //如果返回 true 那么这个 item 的值会被返回,之后查找结束
}); console.log(result); //{name: "user1", age: 18}
  1. 用于返回数组中满足条件的元素组成的新数组:
var result = array.filter(function(item, index, arr){
return item.age >=18 && item.age <= 25;
}); console.log(result); // [{name:"user1", age:18}, {name:"user2", age:20}]
  1. 用于对数组中的元素进行排序:
array.sort(function(a,b) {
if (a > b) {
return 1;
} else if (a < b) {
return -1;
} else {
return 1;
}
}); console.log(array);
// [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
  1. 用于向数组的开头添加一个或多个元素,并返回新的长度:
var length = array.unshift(1,2,3,4);
console.log(array); // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
console.log(length); // 14

微信小程序中的数组有许多常用的方法和用法的更多相关文章

  1. 关于微信小程序中的样式使用变量值的方法

    在开发过程中,通常碰到样式非固定的情况,这时候就要使用变量来规定样式,例如,一个view的宽度需要使用变量: 1. 在wxss中,定义变量:width:var(--width--); 2. 在js中, ...

  2. 微信小程序中如何使用setData修改数组或对象中的某一参数

    本人也是刚开始接触微信小程序,在微信小程序中经常会遇到修改数组中某一项的值,比如array[0]或者是对象中object.item的值.这些值在微信小程序中都需要使用一个名为setData的方法,而这 ...

  3. 全栈开发工程师微信小程序-中(下)

    全栈开发工程师微信小程序-中(下) 微信小程序视图层 wxml用于描述页面的结构,wxss用于描述页面的样式,组件用于视图的基本组成单元. // 绑定数据 index.wxml <view> ...

  4. 全栈开发工程师微信小程序-中

    全栈开发工程师微信小程序-中 多媒体及其他的组件 navigator 页面链接 target 在哪个目标上发生跳转,默认当前小程序,可选值self/miniProgram url 当前小程序内的跳转链 ...

  5. 在微信小程序中使用LeanCloud(一)

    之前学习了微信小程序前端,使用到LeanCloud线上数据库 [传送门].作为一个前端开发人员,了解后端及数据库是学习工作的需要. LeanCloud直接登录,未注册直接创建账户.它是一款免费的线上数 ...

  6. 在微信小程序中绘制图表(part2)

    本期大纲 1.确定纵坐标的范围并绘制 2.根据真实数据绘制折线 相关阅读:在微信小程序中绘制图表(part1)在微信小程序中绘制图表(part3) 关注我的 github 项目 查看完整代码. 确定纵 ...

  7. 微信小程序中视频的显示与隐藏

    在微信小程序中实现视频的播放与暂停 需求: 视频列表中只能有一个视频在播放 点击视频实现播放与暂停功能 加载完成显示图片,点击后变为视频播放 从上次播放的位置进行播放 思路: 定义一个标记变量,控制视 ...

  8. 网页或微信小程序中使元素占满整个屏幕高度

    在项目中经常要用到一个容器元素占满屏幕高度和宽度,然后再在这个容器元素里放置其他元素. 宽度很简单就是width:100% 但是高度呢,我们知道的是height:100%必须是在父元素的高度给定了的情 ...

  9. 在微信小程序中使用富文本转化插件wxParse

    在微信小程序中我们往往需要展示一些丰富的页面内容,包括图片.文本等,基本上要求能够解析常规的HTML最好,由于微信的视图标签和HTML标签不一样,但是也有相对应的关系,因此有人把HTML转换做成了一个 ...

  10. 微信小程序中发送模版消息注意事项

    在微信小程序中发送模版消息 参考微信公众平台Api文档地址:https://mp.weixin.qq.com/debug/wxadoc/dev/api/notice.html#模版消息管理 此参考地址 ...

随机推荐

  1. 一个树状数组求逆序对的进阶 [USACO17JAN] Promotion Counting P

    题面就这样,就是在树上求一个逆序对但是我笨笨地求了对于每一个下属有几个上司能力比他低还一遍就写对了,结果发现看错题目了难得一遍过,但是没有完全过

  2. Interesting Array 题解

    Interesting Array 题目大意 构造一个序列 \(a\),使其满足若干限制条件,每个限制条件是形如 l r q 的式子,其意义是:\(\&_{i=l}^ra_i=q\). 题意分 ...

  3. 使用gitbook快速搭建文档中心

    背景 在研发一个系统,主要给公司内部同事用,按理说,简单点的话,搞个使用文档就行了,但产品经理希望是做成一个文档中心,比如,你学习个新技术的时候,比如vue,一般有个在线的帮助文档,他的想法就是这种. ...

  4. CSP 2022 游寄

    Day -2147483648 官网有了通知,但选手注册不知为何坏掉了: 先开坑: Day -大概两个月 注册了,但老师还没给我审核呜呜呜 第一轮 早上 早上起床就直接来机房了,不用跑操欸嘿. 上午 ...

  5. 【re】[NISACTF 2022]string --linux下的随机数

    附件下载,查壳 发现是ELF程序,64位,ida打开分析 flag函数点进去 前面一堆代码其实都不重要,直接看主要代码:  puts("The length of flag is 13&qu ...

  6. STM32CUBEIDE 如何将变量定义到指定内存地址

    使用场景如下: 我需要将bootloader/APP的版本号和一些字段信息定义到指定FLASH地址. 在STM32CubeIDE中的方法: 截止当前STM32CubeIDE还没有提供图形化的针对FLA ...

  7. 🔥🔥Java开发者的Python快速进修指南:实战之简易跳表

    前言 之前我已经将Python的基本语法与Java进行了比较,相信大家对Python也有了一定的了解.我不会选择去写一些无用的业务逻辑来加强对Python的理解.相反,我更喜欢通过编写一些数据结构和算 ...

  8. vscode设置将英文界面设置为中文?

    如果您希望将 Visual Studio Code(以下简称VSCode)的界面从英文设置为中文,可以按照以下步骤进行: 打开 VSCode 编辑器,并进入"扩展"菜单. 在搜索框 ...

  9. 深度解读DBSCAN聚类算法:技术与实战全解析

    探索DBSCAN算法的内涵与应用,本文详述其理论基础.关键参数.实战案例及最佳实践,揭示如何有效利用DBSCAN处理复杂数据集,突破传统聚类限制. 关注TechLead,分享AI全维度知识.作者拥有1 ...

  10. hbase报错 ERROR: org.apache.hadoop.hbase.ipc.ServerNotRunningYetException: Server is not running yet

    hbase报错:hbase shell能打开 网页也能打开 但是一执行命令就开始报错. 原因:hadoop的安全模式打开. 解决方法:关闭安全模式 ,再重新启动HBase就可以了. 具体的命令: 1. ...