js 数组 字符串基础方法

数组是一个有序的列表,可以在数组中存放任意的数据,并且数组的长度可以动态的调整

----创建方式

实例化创建 

var arr = new Array(3); 创建长度为3的数组 每一项都为empty

arr = new Array(1,2,3,4); [1,2,3,4]

通过字面量创建数组

var arr = [1, 2, 3, 4];

----属性及获取元素

length 数组的长度

通过下标索引获取数组元素 arr[0]...

----数组遍历

1.采用for循环 

for(var i=0;i<arr.length;i++){}

2.for in 循环

for(var key in arr){} key为下标

for in循环的索引为字符串型数字 不能直接进行几何运算;遍历顺序不固定;for-in会遍历数组所有可枚举属性,包括原型

3.for of 循环

for(var key of arr){}

顺序固定 也不会遍历出所有可枚举属性

----数组元素赋值

1.直接字面量

var arr = ['a','b','c'];

2.下标获取元素后赋值

arr[2] = 'kk'

arr[8] = 'oooo' 给下标为8的元素的赋值 如果跨位了 空位显示empty

----数组基础方法

--isArray(obj)

Array.isArray([1,2,3])

判断是否是数组 如果是Array返回true 否则返回false

--join(separator)

var arr = [1,2,3,4];

arr.join('-'); // “1-2-3-4”

将数组的所有元素连接成一个字符串并返回该字符串 如果数组length为0 则返回空字符串 如果一个元素为undefined或null 那么它会被转换为空字符串

separator 分隔符

--push(element1,...,elementN)

将一个或多个元素添加到数组末尾 返回该数组的新长度

var arr = [1,2,3]

arr.push(4); arr.push(5,6,7);

--unshift(element1,...,elementN)

将一个或多个元素添加到数组的前端 返回该数组的新长度

arr.unshift(9)

--pop()

从数组中删除最后一个元素 返回删除的元素 如果数组为空则返回undefined

arr.pop()

--shift()

从数组中删除第一个元素 返回删除的元素 如果数组为空则返回undefined

arr.shift()

--slice([begin[, end]])

切割数组 返回一个新的数组对象  不改变原数组

arr.slice(2, 4)

arr.slice(2)

如果不传参 默认切割整个数组;如果end不传 则从索引为begin的元素一直提取到数组末尾;如果end传了 则从索引为begin的元素提取到索引为end的元素(包含begin,不包含end);如果end大于数组的长度也会一直提取到数组末尾

--concat()

合并两个或多个数组 返回合并后的新数组

var newArr = ['a','b']

arr.concat(newArr);

--indexOf(element,fromIndex)

在数组中查到给定元素的第一个索引 如果存在返回索引 不存在返回-1

fromIndex如果传了则从fromIndex开始查找 如果fromIndex不传则从索引为0开始查找

arr.indexOf('b')

----排序

--冒泡排序

1.比较相邻的元素。如果第一个比第二个大,就交换他们两个

2.对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数

3.针对所有的元素重复以上的步骤,除了最后一个

4.持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较

 --选择排序

--插入排序

----数组引用

数组属于对象object的一种 属于引用类型

 非引用关系的基础类型 在进行直接赋值的时候 会将赋值变量对应栈内存中空间所存储的值赋值给被赋值变量左边

引用类型进行直接变量赋值操作时 因为数组为引用类型 内容存储于堆内存中 栈内存中只存储了数组的指针 所以数组变量直接作为赋值时是将栈内存的指针赋值给了接收变量

----字符串基础方法

--charAt(index)

从字符串中返回指定的字符

--indexOf(element, fromIndex)

返回在字符串中可以找的给定字符的第一个首字对应索引 如果不存在返回-1

fromIndex 从指定索引开始查找

--split(separator)

将字符串根据指定分隔符分割成字符串数组  返回切割成的数组

var str = 'hello, world, haha';

var arr = str.split(',') // ['hello',' world',' haha']

--slice(begin, end)

提取字符串的一部分 返回一个提取的字符串 不改变原字符串

begin起始索引 end结束索引 包含起始索引不包含结束索引

--trim()

去掉字符串两端的空白字符 返回去掉了空白字符的新字符串

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值