欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JS数组和字符串汇总

程序员文章站 2022-03-31 22:00:38
数组 1. 基本常识 数组是引用类型的一种,什么是引用类型呢? 和原始类型不同,引用类型变量中存放的仅仅是 引用对象的内存地址 。 所以,当我们复制引用类型的时候,复制的仅仅是它的地址罢了。 也就是说,任意一个变量发生变化,地址上的对象也随之变化。 举个例子: 2. 常用属性与方法 属性:Array ......

数组

1. 基本常识

数组是引用类型的一种,什么是引用类型呢?

和原始类型不同,引用类型变量中存放的仅仅是引用对象的内存地址

所以,当我们复制引用类型的时候,复制的仅仅是它的地址罢了。

也就是说,任意一个变量发生变化,地址上的对象也随之变化。

举个例子:

var a = [1,2,3];
var b = a;
b[0] = 'first';
console.log(b[0]); // 'first'
console.log(a[0]); // 'first'

2. 常用属性与方法

属性:array.length 获取数组长度(也就是数组元素的个数)

方法:

  • 检查数组
    value instanceof array => true / false

array.siarray(value) => true / false

  • 转换方法
    tostring() / join(sep) => 变成字符串,自定义分隔符(默认逗号分隔)

valueof() => 返回指定对象本身

  • 栈方法
    放砝码,先进后出

push() => 在数组末尾添加元素

pop() => 在数组末尾删除元素

  • 队列方法
    装子弹,先进先出

unshift() => 在数组开头添加元素

shift() => 在数组开头删除元素

  • 重排序方法
    reverse() => 反转

sort() => 升序(值逐渐升高)

注意:sort()比较的是字符串!sort()中可以传入一个比较函数。

  • 操作方法
    基于原数组,在新的副本上操作(不影响原数组),只是返回新数组。

concat() => 数组元素拼接 在数组末尾添加元素,如果是数组那就将数组里的元素添加到末尾

slice() => 切片 顾头不顾尾

splice(startindex, deletenum, newitem) => 有三个参数,分别是开始位置、移除项数、被插入项。可以进行三种操作:删除、插入、替换。

- array.splice(1, 2) => 从下标1开始,删除2个元素(下标1和下标2被删)。
- array.splice(1, 0, 'newitem'); => 在下标1处插入元素'newitem'。
- array.splice(1, 0, 'newitem01', 'newitem02'); => 在下标1处插入多个元素。
- array.splice(1, 2, 'newitem01', 'newitem02'); => 在下标1处先删除2个元素,再插入新的元素(同上,1个或多个)。
  • 位置方法
    indexof(value, [seekindex]) => value的下标 第一个参数表示要查找的元素,第二个参数表示查找的起始位置。

lastindexof(value) => value最后一次出现的下标

注意:如果返回-1,表示数组中没有该项。

  • 未完待续……

字符串

1. 基本常识

字符串作为基本数据类型,它是不可以改变原始值的,属于不可变类型。(数组属于可变类型)

那么,它为什么可以有属性和方法呢?

因为它是包装类,首先会通过new string()创建一个字符串对象,这样就拥有了对象的属性和方法。

当属性和方法调用完毕后,这个字符串对象就会销毁。

2. 常用属性与方法

属性:string.length 获取字符串长度(字符个数)

方法:

  • 字符方法
    charat(index) => 返回对应下标的字符

charcodeat(index) => 返回对应下标的字符编号

  • 转换方法
    string.split(sep) => 变成数组,自定义分隔符

  • 操作方法
    和数组的操作方法concat()、slice()、splice()类似。

string.concat() => 字符串拼接(和加号的作用相同,先把符号左右转换成字符串然后相加)

string.slice() => 切片,顾头不顾尾

string.substring() => 同slice() 注意:传入负数直接转换为0

string.substr(stratindex, length) => 也是切片,不同的是第一个参数是开始下标位置,第二个参数是操作的字符长度。

  • 位置方法
    indexof() => 返回查找字符的下标

lastindexof() => 最后出现的下标

注意:没有找到返回-1,第二个参数表示开始查找的下标

trim() => 删除前置和后缀的所有空格

  • 大小写转换
    tolowercase() => 字符串全部小写

touppercase() => 字符串全部大写

  • 未完待续……