Web初级——数组对象常用api
js数组常用api
连接函数:join("连接符")
var array = [1,2,3,4,5]
console.log(array.join("+"))

拼接函数:concat(str|array)
参数是数据的话,则把数据拼接到数组后,如果是数组元素,则将参数数组的元素拼接到该数组后而不是参数数组
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, 7]]); // [1,2,3,4,5,[6,7]]
截取函数:arr.slice(start[end])
end可省略,表示从start位置一直截取到末尾
var array = [1,2,3,4,5]
console.log(array.slice(3))//返回一个新数组

删除、插入、替换:arr.splice(start, deleteCount [,value1,value2...])
(1)直接修改原数组。
(2)返回所有被删除元素组成的子数组。
(3)如果 deleteCount 是 0,表示插入元素,插入的元素会排在 start 处元素之前。
(4) 如果是删除,从 start 开始,并包含 start 处的元素。
var array2 = [1,2,3,4,5,6,7,8,9]
console.log(array2.splice(2,3))
console.log(array2)
array2.splice(2,0,3,4,5)
console.log(array2)

翻转数组:reverse()
修改原数组
排序:sort()
- 默认按照元素第一位ascll码升序排列
可以设置下列的比较器函数来控制升序,降序或者打乱。
(1)arr.sort(function(a,b){return a-b;}); 升序(只限数组中是数字或者数字字符串)。
(2)arr.sort(function(a,b){return b-a;}); 降序(只限数组中是数字或者数字字符串)。
(3)arr.sort(function(){
return Math.random()>.5 ? 1 : -1;
});随机打乱数组(数组中可以是任何数据类型)
var array3 = [5,4,1,32,6,2,4,54,57,8,23]
array3.sort()
console.log(array3)
array3.sort(function(){
return Math.random()>.5 ? 1 : -1;
})
console.log(array3)
array3.sort(function(a, b) {
return b-a;
})
console.log(array3)

查找:indexOf()或者lastIndexOf(value[,from])
返回value在数组中的索引,没有找到返回-1。
var array = [1,2,3,4,5]
console.log(array.indexOf(3))

循环数组:forEach(function(value,index,arr){})
map(function(value,index,arr){})
数组转字符串:toString()
将数组用逗号连接,类似于join(",")
开头入栈:unshift(number,...)
数组开头插入元素
开头出栈:shift()
弹出最开头元素
结尾入栈:push(number,...)
结尾出栈:pop()
全部条件验证:every(item=>{return 条件})
验证数组元素是否全部符合条件
var array4 = [5,4,1,32,6,2,4,54,57,8,23]
console.log(array4.every(item=>{
return item<90
}))
console.log(array4.every(item=>{
return item>10
}))

部分条件验证:some(item=>{return 条件})
有一个元素满足条件则退出
条件过滤:filter(item=>{return 条件})
满足条件的子元素组成一个数组返回
var array4 = [5,4,1,32,6,2,4,54,57,8,23]
console.log(array4.filter(item=>{
return item>10
}))

功能性遍历:reduce()
累加功能:
let a = [1,2,3,4].reduce(function(x, y) {
return x + y;
});
数组转对象:
const arr = [
{id: '1', name: 'Jim'},
{id: '2', name: 'Lily'},
{id: '3', name: 'Allen'}
]
let obj = arr.reduce((acc, current) => {
return {...acc, [current.id]: current};
}, {})
console.log(obj)
// {
// 1: {id: '1', name: 'Jim'},
// 2: {id: '2', name: 'Lily'},
// 3: {id: '3', name: 'Allen'}
// }
将二维数组扁平化为一维数组
const array1 = [
['没','有', '共','产','主义'],
['就', '没', '有', '新', '中','国']
];
let array2 = array1.reduce((acc, current) => {
return acc.concat(current);
}, [])
console.log('arrLevel1', arrLevel1)
// -> ['没','有', '共','产','主义','就', '没', '有', '新', '中','国']
找元素:find(item=>{return 条件})
和some不同的是,他返回的是元素
找元素(下标):findIndex(item=>{return 条件})
和find不同的是,他返回的是元素下标
找元素:includes(value)
和some不同的是,他参数是元素
转化为本地化字符串toLocaleString()
对象常用api
Object对象
属性合并:assign(目标对象,属性源....)
let target = {"name":"张三","年龄":"18"}
let sourse = {"sex":"男","职业":"程序员"}
Object.assign(target,sourse)
console.log(target)

获取对象原型:getPrototypeOf(obj)
判断对象是否可扩展(是否可在上面新增属性):isExtensible(obj)
阻止对象被扩展:preventExtensions(obj)
判断两个值是否相同:is(value1,value2)
返回对象可枚举属性的数组:values(obj)

String对象
返回指定位置的字符:charAt(number)
返回指定位置字符的Unicode编码:charCodeAt(number)
将Unicode码转换为字符串:fromCharCode()
选取字符串:slice(start,end)
类似于数组的截取函数slice
分隔数组:split(“?”)
将字符串以"?"分割成数组
var a = "没有共产dang,就没有新中国!"
console.log(a.split(","))
console.log(a.split(""))

返回指定字符串的第一个位置:indexOf()
大写转换:toLowerCase()
小写转换:toUpperCase()
var str = "AbCdefGhIJklmN";
console.log(str.toUpperCase());
console.log(str.toLowerCase());

- 正则匹配:match()
- 字符替换:replace()
- 字符匹配:search()
Number对象
数字转化:Number()
将括号里的字符转化为数字类型
转化字符:toString()
将数字转化为字符串
四舍五入:toFixed(n)
小数点后n位四舍五入
整数转换:parseInt()
浮点数转换:parseFloat()
Web初级——数组对象常用api的更多相关文章
- request对象常用API 获取请求参数的值 request应用 MVC设计模式
1 request对象常用API 1)表示web浏览器向web服务端的请求 2)url表示访问web应用的完整路径:http://localhost:8080/day06/Demo1 ...
- Javascript 数组对象常用的API
常用的JS数组对象API ES5及以前的Api ECMAScript5为数组定义了5个迭代方法,每个方法接收两个参数, 一个是每项运行的函数,一个是运行该函数的作用域对象(可选项),传入这些方法的函数 ...
- JQUERY-事件-动画-类数组对象-添加自定义API
正课: 1. 事件: 2. 动画: 3. 类数组对象操作: 4. 添加自定义API: 1. 事件: 1. 页面加载后执行: 2个时机 1. DOM内容加载完成: 仅包括html, js DOMCont ...
- JavaScript 数组对象常用属性
concat() 用于连接两个或多个数组.该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本. var a = ["aa","ccc"]; var b ...
- 字符串、数组、对象常用API
常用的字符串API 1.常见方法和属性 length 属性,获取字符串的字符数量 charAt(i) 返回给定位置的字符 charCodeAt( ) 返回给定位置的字符的字符编码 <scrip ...
- 数组和对象常用API
数组API: 1. forEach 遍历所有元素 var arr = [1,2,3] arr.forEach(function(item,index){ // 遍历数组的所有元素 console.lo ...
- Java一维数组二维数组详解API
所谓数组,是有序的元素序列. 若将有限个类型相同的变量的集合命名,那么这个名称为数组名.组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量.用于区分数组的各个元素的数字编号称为下标 ...
- web内置对象
内置对象,宿主对象,自定义对象的区别? 内置对象: 系统所提供的对象:Object,Array,Math,Date等等. 宿主对象: JS所运行的环境提 ...
- js学习---常用的内置对象(API)小结 :
内置对象(API): 日期 Date: getFullYear() 返回完整的4位的年份 如:2016 getMonth() 返回月份,从0开始 getDate() 返回当前月的第几天,当 ...
- javascript 原生常用api 数组方法大全
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
随机推荐
- 题解 SP10500 HAYBALE - Haybale stacking
前言 想了好久树状数组啥的,后来想想写打个差分再说,结果写完一遍AC了-- 强烈安利 题意 一个由 \(n\) 个元素组成的序列,给出 \(k\) 个操作,每次将 \(a\sim b\) 加上 \(1 ...
- 禁止eslint对指定代码检测
有时候我们引入外部文件的API时,eslint无法识别,编译的时候就会出现warn eslint是可以禁用对指定代码的检测: 单行注释 let map = new BMap.Map('map') // ...
- 关于Docker的一些事--Docker-Compose 升级版本
起源 近来一直在研究怎么搭建自己的私有网盘,本着虚心耐心,认真求是态度,开始做起了实验,最终种草了Nextcloud这款开源网盘,然而用私人的服务器感觉很卡,故转战到了一个基友的服务器,感觉非常吊! ...
- Git配置和使用?Git你真的会用么?Git与SVN的主要区别
1.Git环境配置 在学习Git之前,首先要知道什么是版本控制 1.1 版本控制:版本迭代.新的版本!版本管理器 版本控制是开发过程中用于管理我们的文件.目录或工程内容的修改内容,查看修改历史记 ...
- DevExpress窗体加载等待
using DevExpress.XtraEditors; using DevExpress.XtraSplashScreen; using System; using System.Collecti ...
- 抠网页标题栏logo(图标)
1.打开自己需要抠的网页,例如百度页面 2.在这个网页链接后面+" /favicon.ico " 就可以提取ico图片 3.回车进去,右键鼠标,选择另存为图片就可以成功保存网页中的 ...
- 2022-11-04 Acwing每日一题
本系列所有题目均为Acwing课的内容,发表博客既是为了学习总结,加深自己的印象,同时也是为了以后回过头来看时,不会感叹虚度光阴罢了,因此如果出现错误,欢迎大家能够指出错误,我会认真改正的.同时也希望 ...
- CPU体系(2):ARM Store Buffer
本文主要翻译自 Arm Cortex-M7 Processor Technical Reference Manual r1p2 其中章节 Memory System / L1 caches / Sto ...
- 对Java Web中WEB-INF目录的理解以及访问方法
事情发生 在上个暑假第一次写Java web大项目的时候,对于目录管理及分配没有任何经验,就想着清晰明了. 后端servlet是用maven进行构建的,所以在目录上没有碰到什么大问题. 用idea进行 ...
- Vue2基本组件间通信
Vue2组件通信的基础方式 自己的理解:组件化通信,无非就是数据你传我,我传你,两个组件的相互交流,方法很多,下方有图示(此篇建议小白阅读,大神的话也不会看,哈哈哈哈!仅供参考,有不同的意见可以一起交 ...