javaScript集合和引用

1:object创建的两种方式
(1):通过new关键字创建

var obj=new Object();
obj.name="小明";

(2)字面量创建

	var obj={
			name:'小明',
			age:14
		}

2:访问属性的方法
(1)obj.name
(2)obj[name]

3:Array
创建数组:
(1)new关键字创建
let color=new Array();创建一个数组对象
let color=new Array(10);创建一个空间为10的数组大小
let color=new Array(‘red’,‘yellow’,green’);创建一个包含三个元素的数组对象
(2)字面量创建
let colors=[‘red’,‘yellow’,‘green’];包含三个元素的数组
let colors=[];创建一个空数组
let colors=[1,2,]创建一个包含两个元4
4:数组中的Api

(1)from方法
将类数组转换成数组的实例

Array.from("maray")     //['m','a','r','a','y']
map=new map();
map.set(1,2);
map.set(3,4);
Array.from(map)     [[1,2],[3,4]]
set =new set();
set.add(1);
set.add(2);
set.add(3);
Array.from(set);     [1,2,3]
a =[1,2,3,4]
Array.from(a)     [1,2,3,4]

Array可以接收第二个参数,增强数组的值,三个参数指定函数的中的this

a=[1,2,3,4];
Array.from(a,x=>x**2)        [1,4,9,16]

Array.from(a,function(x){return x**this.express},{express:2})
[1,4,9,16]

(2)of方法
将一组参数转换成数组实例

Array.of(1,2,3,4)   [1,2,3,4]
在es6之前
Array.prototype.slice.call(arguments);


数组中的空位
在es6中把空位当成undefined

在es6之前对空位的不同处理

会跳过空位

const op=[1,,,5]
map会跳过空格
op.map(()=>6)[6,undefined,undefined,undefined,6]

把空格当成空字符串,
join会把空格当成空字符串
op.join('-') 1---5

(3)isArray方法
判断是不是一个实例是不是数组

Array.isArray(value)

(4)迭代器方法keys(),values(),entries()

a=['a','b','c','d','e'];
Array.from(a.keys());[0,1,2,3,4]
Array.from(a.values());[a,b,c,d,e]
Array.from(a.entries());[[0,'a'],[1,'b'],[2,'c'],[3,'d'],[4,'e']
a=['a','b','c','d','e']
for(const [inde,element] of a.entries())
{
conse.log(inde);
conse.log(element);
}
0
a
1
b
2
c
3
d
4
e

(5)复制和填充方法copyWithin(),fill()

fill()第一个参数表示填充的数,第二个和第三个参数填充数的范围
const s=[0,0,0,0,0]
s.fill(5);[5,5,5,5,5]
s.fill(5,3);[0,0,0,5,5]
s.fill(7,1,3):[0,7,7,7,0]
copyWithin()会按照指定的范围浅复制数组中的部分内容
ints =[0,1,2,3,4,5,6,7,8,9]
将0开始的内容复制到5开始的位子
ints.copyWithin(5)[0,1,2,3,4,0,1,2,3,4]
ints.copyWithin(0,5)[ 5,6,7,8,9,5,6,7,8,9]

(6)转换方法toLocaleString(),toString(),valueOf()
tostring()每个值用,拼接
valueOf()每个值用,拼接
toLocaleString()会调用每个数值的toLocaleString()

(6)jion

color=[1,2,3]
color.jion('-');
1-2-3

(7)栈的方法
push()

color =[1,2,3]
color.push(4);
[1,2,3,4]
数组的末尾添加一个或者多个元素,返回数组的长度

pop()

color =[1,2,3]
color.pop()
[1,2]
删除数组的最后一项,返回被删除的一项 

(8)队列的方法
shift()

删除数组的第一项,并且返回他 

unshift()

在数组开头添加一个或者多个元素

(9)排序方法
reverse()
数组元素的反向排列
sort( )
数组元素进行排序

(10)操作方法
concat()两个数组进行拼接
slice()数组进行截取操作,可以接收两个参数开始索引,和结束索引
splice()
删除:给两个参数一个是要删除元素的开始位置,第二个参数删除的个数
插入:插入元素的开始位置,删除元素的数量0,要插入的一个或者多个元素
替换:插入元素的开始位置,删除元素的数量,要插入一个或者多个元素

(11)搜索和位置方法
indexof()数组的开头找对应字符的下标
lastIndexof()数组的结尾找对应字符的下标
includes()找一个数组中是否出现另外的一个数组
find()返回第一个匹配的元素
findIndex ()第一个匹配元素的索引

find和findindex接受的参数
const pepole=[
{
name:"小明",
age:17
},
{
name:“小红”
age:19
}
]
pepole.find((element,index,Array)=>{
element.age<18
})
输出
{name:'小明',age:17}

pepole.findindex((element,index,Array)=>{
element.age<18
})
输出
0

(12)迭代方法
every()

let nums=[1,2,3,4,5,6,7]
nums.every((item,index,Array)=>{
item>2
})
只要一个不满足就返回false

filter()

let nums=[1,2,3,4,5,6,7]
nums.filter((item,index,Array)=>{
item>2
})
4,5,6,7

forEach()

let nums=[1,2,3,4,5,6,7]
nums.forEach((item,index,Array)=>{

})
只要一个不满足就返回false

map()

let nums=[1,2,3,4,5,6,7]
nums.map((item,index,Array)=>{
item*2
})
1,4,6,8,10,12,14

some()

let nums=[1,2,3,4,5,6,7]
nums.some((item,index,Array)=>{
item>2
})
只要一个满足就返回true
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值