一、数组方法

1.toString() 方法把数组转换为数组值(逗号分隔)的字符串。

var fruits = ["Banana", "Orange", "Apple", "Mango"];
var fruits2 = fruits.toString();
console.log(fruits2);   //结果:Banana,Orange,Apple,Mango

2.join() 方法也可将所有数组元素结合为一个字符串。它的行为类似 toString(),但是您还可以规定分隔符。

var fruits = ["Banana", "Orange","Apple", "Mango"];
var fruits2 = fruits.join(" * ");
console.log(fruits2);   //结果:Banana * Orange * Apple * Mango

3.pop() 方法从数组中删除最后一个元素。

var fruits = ["Banana", "Orange","Apple", "Mango"];
var fruits2 = fruits.pop();
console.log(fruits2);   //结果:["Banana", "Orange", "Apple"]

4.push() 方法(在数组结尾处)向数组添加一个新的元素。

var fruits = ["Banana", "Orange", "Apple", "Mango"];
var fruits2 = fruits.push("Kiwi");
console.log(fruits2);   //结果:["Banana", "Orange", "Apple", "Mango", "Kiwi"]

5.shift() 方法会删除首个数组元素。

var fruits = ["Banana", "Orange", "Apple", "Mango"];
var fruits2 = fruits.shift();
console.log(fruits2);   //结果:["Orange", "Apple", "Mango"]

6.unshift() 方法(在开头)向数组添加新元素。

var fruits = ["Banana", "Orange", "Apple", "Mango"];
var fruits2 = fruits.unshift("Lemon");
console.log(fruits2);   //结果:["Lemon", "Banana", "Orange", "Apple", "Mango"]

7.splice() 方法可用于向数组(添加/删除)元素。

参数说明:

  1. 第一个参数(2)定义了应添加新元素的位置(拼接)。
  2. 第二个参数(0)定义应删除多少元素。
  3. 其余参数(“Lemon”,“Kiwi”)定义要添加的新元素。
var fruits = ["Banana", "Orange", "Apple", "Mango"];
var fruits2 = fruits.splice(2, 0, "Lemon", "Kiwi");
console.log(fruits2);   //结果:["Banana", "Orange", "Lemon", "Kiwi", "Apple", "Mango"]

如果第二个参数为2,则删除2个元素。即 “Apple”, “Mango”

var fruits = ["Banana", "Orange", "Apple", "Mango"];
var fruits2 = fruits.splice(2, 2, "Lemon", "Kiwi");
console.log(fruits2);   //结果:["Banana", "Orange", "Lemon", "Kiwi"]

8.concat() 方法通过合并(连接)现有数组来创建一个新数组。

var arr1 = ["Cecilie", "Lone"];
var arr2 = ["Emil", "Tobias", "Linus"];
var arr3 = ["Robin", "Morgan"];
var myChildren = arr1.concat(arr2, arr3);
console.log(myChildren);   //结果:["Cecilie", "Lone", "Emil", "Tobias", "Linus", "Robin", "Morgan"]

9.slice() 方法用数组的某个片段切出新数组。

var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var citrus = fruits.slice(1, 3);
console.log(citrus);   //结果:["Orange", "Lemon"]

注:该方法会从开始参数选取元素,直到结束参数(不包括)为止。

10.sort() 方法以字母顺序对数组进行排序。

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();         // 反转元素顺序
console.log(fruits);   //结果:["Apple", "Banana", "Mango", "Orange"]

11.reverse() 方法反转数组中的元素。

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();         // 对 fruits 中的元素进行排序
fruits.reverse();      // 反转元素顺序
console.log(fruits);   //结果:["Orange", "Mango", "Banana", "Apple"]

12.Math.max()返回一组数中的的最大值。

var arr = [1, 2, 3];
var max = Math.max(...arr);
console.log(max);   //返回 3

13.Object.assign()合并两个或多个object。

var obj1 = { a: 1, b: 2 }; 
var obj2 = { c: 3, d: 4 }; 
var obj3 = { e: 5, f: 6 };
var obj = Object.assign(obj1, obj2, obj3)
console.log(obj);   //返回 { a: 1, b: 2, c: 3, d: 4, e: 5, f: 6 }

14.map()方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。

var arr = [3, 9];
var res = arr.map((x,i)=>({key: 'key'+i, value: x}));
console.log(res);   //返回 [{key:"key0",value:3},{key:"key1",value:9}]

二、字符串方法

1.indexOf() 方法返回字符串中指定文本首次出现的索引(位置)。

var str = "The full name of China is the People's Republic of China.";
var pos = str.indexOf("China");
console.log(pos);   //结果:17

注:如果未找到文本, indexOf()则返回 -1。

2.lastIndexOf() 方法返回指定文本在字符串中最后一次出现的索引(位置)。

var str = "The full name of China is the People's Republic of China.";
var pos = str.lastIndexOf("China");
console.log(pos);   //结果:51

3.slice() 提取字符串的某个部分并在新字符串中返回被提取的部分。

该方法设置两个参数:起始索引(开始位置),终止索引(结束位置)。

var str = "Apple, Banana, Mango";
var res = str.slice(7,13);
console.log(res);   //结果:Banana

如果省略第二个参数,则该方法将裁剪字符串的剩余部分:

var str = "Apple, Banana, Mango";
var res = str.slice(7);
console.log(res);   //结果:Banana, Mango

4.replace() 方法用另一个值替换在字符串中指定的值。

默认地,replace() 只替换首个匹配:

var str = "hello, Tom!";
var res = str.replace("Tom", "Jerry");
console.log(res);   //结果:hello, Jerry!

默认地,replace() 对大小写敏感。如需执行大小写不敏感的替换,请使用正则表达式 /i(大小写不敏感):

var str = "hello, Tom!";
var res = str.replace(/TOM/i, "Jerry");
console.log(res);   //结果:hello, Jerry!

如需替换所有匹配,请使用正则表达式的 g 标志(用于全局搜索):

var str = "hello, Tom! hello, Jerry!";
var res = str.replace(/hello/g, "hi");
console.log(res);   //结果:hi, Tom! hi, Jerry!

5.toUpperCase() 把字符串转换为大写。

var text1 = "Hello World!";
var text2 = text1.toUpperCase();
console.log(text2);   //结果:HELLO WORLD!

6.toLowerCase() 把字符串转换为小写。

var text1 = "Hello World!";
var text2 = text1.toLowerCase();
console.log(text2);   //结果:hello world!

7.split() 将字符串转换为数组。

var txt = "a,b,c,d,e";
var arr = txt.split(",");
console.log(arr);   //结果:["a", "b", "c", "d", "e"]

三、数值方法

1.toExponential() 返回字符串值,它包含已被四舍五入并使用指数计数法的数字。

var x = 9.656;
x.toExponential(2);     // 返回 9.66e+0
x.toExponential(4);     // 返回 9.6560e+0
x.toExponential(6);     // 返回 9.656000e+0

2.toFixed() 返回字符串值,它包含了指定位数小数的数字。

var x = 9.656;
x.toFixed(0);     // 返回 10
x.toFixed(2);     // 返回 9.66
x.toFixed(4);     // 返回 9.6560
x.toFixed(6);     // 返回 9.656000

3.toPrecision() 返回字符串值,它包含了指定长度的数字。

var x = 9.656;
x.toPrecision();     // 返回 9.656
x.toPrecision(2);    // 返回 9.7
x.toPrecision(4);    // 返回 9.656
x.toPrecision(6);    // 返回 9.65600

4.valueOf() 以数值返回数值。

var x = 123;
x.valueOf();            // 从变量 x 返回 123
(123).valueOf();        // 从文本 123 返回 123
(100 + 23).valueOf();   // 从表达式 100 + 23 返回 123

5.Number() 可用于把 JavaScript 变量转换为数值。

var x1 = true;
var x2 = false;
var x3 = new Date();
var x4 = "10"
var x5 = "10 20"
Number(x1);     // 返回 1
Number(x2);     // 返回 0
Number(x3);     // 返回 1621842783539
Number(x4);     // 返回 10
Number(x5);     // 返回 NaN

注:如果无法转换数字,则返回 NaN

6.parseInt() 函数可解析一个字符串,并返回一个整数。只返回首个数字:

parseInt("10");         // 返回 10
parseInt("10.33");      // 返回 10
parseInt("10 20 30");   // 返回 10
parseInt("10 years");   // 返回 10
parseInt("years 10");   // 返回 NaN

7.parseFloat() 函数可解析一个字符串,并返回一个浮点数。只返回首个数字:

parseFloat("10");        // 返回 10
parseFloat("10.33");     // 返回 10.33
parseFloat("10 20 30");  // 返回 10
parseFloat("10 years");  // 返回 10
parseFloat("years 10");  // 返回 NaN

8.POSITIVE_INFINITY 表示无穷大(溢出返回)。

var x = Number.POSITIVE_INFINITY;

9.NEGATIVE_INFINITY 表示负的无穷大(溢出返回)。

var x = Number.NEGATIVE_INFINITY;
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐