当前位置: 首页 > news >正文

3.JavaScript_数组方法

1.Array.isArray()

`Array.isArray`方法返回一个布尔值,表示参数是否为数组。它可以弥补 `typeof`运算符的不足

var arr = ["学前端", 100, true];
console.log(typeof arr); // object
var arr = ['xqd', 'baizhan', 'it'];
Array.isArray(arr) // true

2.push()/pop()

`push`方法用于在数组的末端添加一个或多个元素,并返回添加新元素后的数组长度。注意,该方法会改变原数组

var arr = [];
arr.push("学前端") // 1
arr.push('itbaizhan') // 2
arr.push(true, {}) // 4
arr // [学前端, 'itbaizhan', true, {}]

`pop`方法用于删除数组的最后一个元素,并返回该元素。注意,该方法会改变原数组

var arr = ['学前端', 'itbaizhan', 'WEB前端'];arr.pop() // 'WEB前端'
arr // ['学前端', 'itbaizhan']

3.shift()/unshift()

`shift`方法用于删除数组的第一个元素,并返回该元素。注意,该方法会改变原数组

var arr = ['学前端', 'itbaizhan', 'WEB前端'];arr.shift() // '学前端'
arr // ['itbaizhan', 'WEB前端']

`shift`方法可以遍历并清空一个数组

var list = [1, 2, 3, 4, 5, 6];
var item;while (item = list.shift()) {console.log(item);
}list // []

`unshift`方法用于在数组的第一个位置添加元素,并返回添加新元素后的数组长度。注意,该方法会改变原数组

var arr = ['学前端', 'itbaizhan', 'WEB前端'];arr.unshift('baizhan'); // 4
arr // ['baizhan', '学前端', 'itbaizhan', 'WEB前端']

`unshift`方法可以接受多个参数,这些参数都会添加到目标数组头部

var arr = [ '学前端', 'itbaizhan' ];
arr.unshift('WEB前端', 'baizhan') // 4
arr // [ 'WEB前端', 'baizhan', '学前端', 'itbaizhan' ]

4.join()

`join`方法以指定参数作为分隔符,将所有数组成员连接为一个字符串返回。如果不提供参数,默认用逗号分隔

var a = [1, 2, 3, 4];a.join(' ') // '1 2 3 4'
a.join(' | ') // "1 | 2 | 3 | 4"
a.join() // "1,2,3,4"

如果数组成员是 `undefined`或 `null`或空位,会被转成空字符串

[undefined, null].join('#')
// '#'['a',, 'b'].join('-')
// 'a--b'

数组的 `join`配合字符串的 `split`可以实现数组与字符串的互换

var arr = ["a","b","c"];
var myArr = arr.join("");
console.log(myArr);
console.log(myArr.split(""));

5.concat()

`concat`方法用于多个数组的合并。它将新数组的成员,添加到原数组成员的后部,然后返回一个新数组,原数组不变

['hello'].concat(['world'])
// ["hello", "world"]['hello'].concat(['world'], ['!'])
// ["hello", "world", "!"]

除了数组作为参数,`concat`也接受其他类型的值作为参数,添加到目标数组尾部。

[1, 2, 3].concat(4, 5, 6)
// [1, 2, 3, 4, 5, 6]

6.reverse()

`reverse`方法用于颠倒排列数组元素,返回改变后的数组。注意,该方法将改变原数组

var a = ['a', 'b', 'c'];a.reverse() // ["c", "b", "a"]
a // ["c", "b", "a"]

实现一个字符串反转排列

var str = "hello";
str.split("").reverse().join("")

7.indexOf()

`indexOf`方法返回给定元素在数组中第一次出现的位置,如果没有出现则返回 `-1`

var arr = ['a', 'b', 'c'];arr.indexOf('b') // 1
arr.indexOf('y') // -1

`indexOf`方法还可以接受第二个参数,表示搜索的开始位置

['学前端', '程序员', 'itbaizhan'].indexOf('学前端', 1) // -1
http://www.dtcms.com/a/605664.html

相关文章:

  • 50013_基于微信小程序的校园志愿者系统
  • 网络维护工作谷歌seo网络营销价格
  • esp32-s3-supermini使用arduio IDE进行mpu6050的数据读取
  • C++ 建造者模式:复杂对象的“定制化分步构建”指南
  • 【开题答辩全过程】以 基于 Spring Boot的一品清餐外卖点餐系统的设计与实现为例,包含答辩的问题和答案
  • 【SpringBoot】36 核心功能 - 高级特性- Spring Boot 中的外部配置文件详解
  • 移动手机号码网站企业在网站建设上的不足
  • 深入解析Go语言GMP调度模型:高并发背后的核心机制
  • 怎么建立自己网站 asp高等学校处网站建设总结
  • 网站怎么做排查修复ppt免费下载模板网站
  • JAVA应用SCA安全扫描开源解决方案
  • 【Java Web学习 | 第十篇】JavaScript(4) 对象
  • 网站建设策划完整方案小程序是什么时候出来的
  • 解决SSL证书安装后网站仍显示“不安全”的问题
  • (已解决)vscode打开stm32cubemx生成的工程报红色波浪线警告
  • 做营销型网站用什么技术百度手机怎么刷排名多少钱
  • 信息安全的容灾与业务持续安全管理的措施
  • 毕业设计网站做几个页面古风淡雅ppt模板免费
  • Android AB升级(三) - update engine架构概述
  • 二叉树递归题目(一)
  • 太仓有没有做网站建设的专业网页设计价格
  • 工作手机监管系统:敏感词预警+行为监控,让销售更规范
  • 实战|SpringBoot+Vue3 医院智能预约挂号系统(含 AI 助手)
  • 网站分析报告范文动态asp.net网站开发
  • 南充做网站公司网站需要网监备案
  • 如何轻松安全地擦除手机数据以便以旧换新
  • 大模型强化学习-DPO
  • 下拉网站导航用ps怎么做新建设网站如何推广
  • 做一个企业网站的费用wordpress+php调优
  • 服务器数据恢复—5盘RAID5中四盘重建RAID5,原RAID5数据恢复有戏吗?