js-数组和字符串-常用操作

写此文原因: 1.快速复习 2.数组太多操作,防止混淆

常用数组操作

splice():此方法通过删除现有元素和/或添加新元素来更改数组的内容.

  • 注意: splice() 方法与 slice() 方法的作用是不同的,splice() 方法会直接对数组进行修改。
  • 返回值
    由被删除的元素组成的一个数组。如果只删除了一个元素,则返回只包含一个元素的数组。如果没有删除元素,则返回空数组。

实例:

var myFish = ["angel", "clown", "mandarin", "surgeon"];

//从第 2 位开始删除 0 个元素,插入 "drum"
var removed = myFish.splice(2, 0, "drum");
//运算后的 myFish:["angel", "clown", "drum", "mandarin", "surgeon"]
//被删除元素数组:[],没有元素被删除
  • 参考

slice():此方法返回一个从开始到结束(不包括结束)选择的数组的一部分浅拷贝到一个新数组对象,原始数组不会被修改.
截取数组里的部分元素

示例:

var fruits = ['Banana', 'Orange', 'Lemon', 'Apple', 'Mango'];
var citrus = fruits.slice(1, 3);

// fruit  输出 ['Banana', 'Orange', 'Lemon', 'Apple', 'Mango']:原始数组不会被修改
// citrus 输出 ['Orange','Lemon']

  • 参考

**push(): **此方法将一个或多个元素添加到数组的末尾,并返回数组的新长度.
在数组里新增元素

  • 返回值
    返回新数组的长度,即:length的值.

示例:

var sports = ["soccer", "baseball"];
var total = sports.push("football", "swimming");

console.log(sports); 
// ["soccer", "baseball", "football", "swimming"]

console.log(total); 
// 4
  • 参考

concat(): 方法用于合并两个或多个数组,此方法不会更改现有数组,而是返回一个新数组.
连接2个或多个数组,返回新数组

  • 返回值
    新的Array实例

示例:

连接两个数组
下面的代码演示两个数组合并为一个新数组:
var alpha = ["a", "b", "c"];
var numeric = [1, 2, 3];

// 组成新数组 ["a", "b", "c", 1, 2, 3]; 原数组 alpha 和 numeric 未被修改
var alphaNumeric = alpha.concat(numeric);

join():方法将数组(或一类数组对象)的所有元素连接到一个字符串
数组以符号分割,转为字符串

  • join() 方法,不会改变数组

**例子: **

下例首先创建了一个数组 a,包含有三个元素,然后用四种不同的分隔符连接所有数组元素。
var a = ['Wind', 'Rain', 'Fire'];
var myVar1 = a.join();      // myVar1的值变为"Wind,Rain,Fire"
var myVar2 = a.join(', ');  // myVar2的值变为"Wind, Rain, Fire"
var myVar3 = a.join(' + '); // myVar3的值变为"Wind + Rain + Fire"
var myVar4 = a.join('');    // myVar4的值变为"WindRainFire"
  • 参考
  • 数组的参考

常用字符串操作

slice():提取字符串的一部分

例子

使用 slice() 创建一个新的字符串
下面例子使用 slice() 来创建新字符串:

var str1 = 'The morning is upon us.';
var str2 = str1.slice(4, -2);

console.log(str2); // OUTPUT: morning is upon u
  • 参考

**split() **方法将一个String对象分割成字符串数组,通过
将字符串分成子串

  • 当字符串为空时,split 返回一个包含一个空字符串的数组,而不是一个空数组。
"Webkit Moz O ms Khtml".split( " " )  
// ["Webkit", "Moz", "O", "ms", "Khtml"]
以空格分割.
  • 参考

**substring() **方法返回一个字符串在开始索引到结束索引之间的一个子集, 或从开始索引直到字符串的末尾的一个子集

var anyString = "Mozilla";

// 输出 "Moz"
console.log(anyString.substring(0,3));
  • 参考

**replace()
**方法返回一个由替换值替换一些或所有匹配的模式后的新字符串。模式可以是一个字符串或者一个[正则表达式]替换值可以是一个字符串或者一个每次匹配都要调用的函数。

var str = 'abcdeabcde';
console.log(str.replace('a', 'A'));//‘Abcdeabcde';部分替换
console.log(str.replace(/a/, 'A'));
如果第一个参数传入的全局匹配的正则表达式,
那么replace()将会对符合条件的子字符串进行多次替换,
最后返回经过多次替换的结果字符串。

var str = 'abcdeabcdeABCDE'; 
console.log(str.replace(/a/gi, '));    //返回AbcdeAbcdeABCDE
console.log(str.replace(/a/g, 'A'));  //返回$bcde$bcde$BCDE

  • 参考

你可能感兴趣的:(js-数组和字符串-常用操作)