操纵数组的方法
常见的有10种
push() -在数组末尾添加一个或多个元素,并返回新的长度。
pop() -删除数组的最后一个元素,并返回那个元素。
shift() -删除数组的第一个元素,并返回那个元素。
unshift() -在数组的开始添加一个或多个元素,并返回新的长度。
splice() -通过删除现有元素或添加新元素来更改一个数组的内容。
//---splice()实例---------let numbers = [1, 2, 3, 4, 5];// 从索引2开始删除3个元素let removed = numbers.splice(2, 3);console.log(removed); // 输出: [3, 4, 5]console.log(numbers); // 输出: [1, 2]// 在索引2处添加两个元素numbers.splice(2, 0, 3.5, 4.5);console.log(numbers); // 输出: [1, 2, 3.5, 4.5]//---splice()实例结束--------
slice() -返回数组的一个浅拷贝,从开始到结束(不包括结束)的元素。
concat() -用于合并两个或多个数组。此方法不会改变现有的数组,而是返回一个新数组。
//--------concat()实例-------------let array1 = [1, 2, 3];let array2 = [4, 5];let combined = array1.concat(array2);console.log(combined); // 输出: [1, 2, 3, 4, 5]console.log(array1); // 输出: [1, 2, 3] (原数组不变)//------concat()实例结束--------
sort() -对数组的元素进行排序
//-----sort()实例---------let numbers = [3, 1, 4, 2];numbers.sort((a, b) => a - b);console.log(numbers); // 输出: [1, 2, 3, 4]//-----sort()实例结束--------
map() -创建一个新数组,其结果是该数组中的每个元素都调用一个提供函数后的返回值。(难理解!)
//----map()实例---------let array = [1, 2, 3, 4];let mappedArray = array.map(function(item) {return item * 2;});console.log(mappedArray); // 输出: [2, 4, 6, 8]//----map()实例---------
filter() -创建一个新数组,其包含通过所有提供函数实现的测试的所有元素。(相当于过滤)
reduce() -对累加器和数组中的每个元素(从左到右)应用一个函数,将其减少为单个输出值。(难理解!)
操作字符串的方法
let str = "Hello, World!";// charAtconsole.log(str.charAt(7)); // 输出: W// concatlet str2 = " Welcome to JavaScript.";let result = str.concat(str2);console.log(result); // 输出: Hello, World! Welcome to JavaScript.// indexOfconsole.log(str.indexOf("World")); // 输出: 7// lastIndexOfconsole.log(str.lastIndexOf("World")); // 输出: 7// sliceconsole.log(str.slice(0, 5)); // 输出: Hello// substringconsole.log(str.substring(0, 5)); // 输出: Hello// substrconsole.log(str.substr(0, 5)); // 输出: Hello// splitlet words = str.split(" ");console.log(words); // 输出: ["Hello,", "World!"]// replaceconsole.log(str.replace("World", "JavaScript")); // 输出: Hello, JavaScript!// toLowerCaseconsole.log(str.toLowerCase()); // 输出: hello, world!// toUpperCaseconsole.log(str.toUpperCase()); // 输出: HELLO, WORLD!// trimlet whitespaceStr = " Hello, World! ";console.log(whitespaceStr.trim()); // 输出: Hello, World!