面试题系列---【字符串常用方法、数组常用方法、Number常用方法】
String类里面常用的20个方法
和长度有关的方法
返回类型 方法名 作用
int length() 得到一个字符串的字符个数(一个中文是一个字符,一个英文是一个字符,一个转义字符是一个字符)
和数组有关的方法
返回类型 方法名 作用
byte[] getBytes() 将一个字符串转换成字节数组
char[] toCharArray() 将一个字符串转换成字符数组
String[] split(String) 将一个字符串按照指定内容劈开
和判断有关的方法
返回类型 方法名 作用
boolean equals(String) 判断两个字符串的内容是否一模一样
boolean equalsIgnoreCase(String) 忽略大小写的比较两个字符串的内容是否一模一样
boolean contains(String) 判断一个字符串里面是否包含指定的内容
boolean startsWith(String) 判断一个字符串是否以指定的内容开头
boolean endsWith(String) 判断一个字符串是否以指定的内容结尾
和改变内容有关的方法
和改变内容有关的方法,都不会直接操作原本的字符串 而是将符合条件的字符串返回给我们,所以注意接收
返回类型 方法名 作用
String toUpperCase() 将一个字符串全部转换成大写
String toLowerCase() 将一个字符串全部转换成小写
String replace(String,String) 将某个内容全部替换成指定内容
String replaceAll(String,String) 将某个内容全部替换成指定内容,支持正则
String repalceFirst(String,String) 将第一次出现的某个内容替换成指定的内容
String substring(int) 从指定下标开始一直截取到字符串的最后
String substring(int,int) 从下标x截取到下标y-1对应的元素 String trim() 去除一个字符串的前后空格
和位置有关的方法
返回类型 方法名 作用
char charAt(int) 得到指定下标位置对应的字符
int indexOf(String) 得到指定内容第一次出现的下标
int lastIndexOf(String) 得到指定内容最后一次出现的下标
数组中所有方法
1、concat()把元素衔接到数组中。
例子:
var` `str1 = ``"Hello "``;``var` `str2 = ``"world!"``;``var` `n = str1.concat(str2);``Hello world! 输出结果
2 every() 方法使用指定函数检测数组中的所有元素:
- 如果数组中检测到有一个元素不满足,则整个表达式返回 false ,且剩余的元素不会再进行检测。
- 如果所有元素都满足条件,则返回 true。
注意: every() 不会对空数组进行检测。
注意: every() 不会改变原始数组。
例子:
var` `ages = [32, 33, 16, 40];` `function checkAdult(age) {`` ``return` `age >= 18;``}` `function myFunction() {`` ``document.getElementById(``"demo"``).innerHTML = ages.every(checkAdult);``}` `false` `输出结果
3、filter()返回满足断言函数的数组元素。
var` `ages = [32, 33, 16, 40];` `function checkAdult(age) {`` ``return` `age >= 18;``}` `function myFunction() {`` ``document.getElementById(``"demo"``).innerHTML = ages.filter(checkAdult);``}``32,33,40 输出结果
4、forEach()为数组的每一个元素调用指定函数。
<button onclick="numbers.forEach(myFunction)">点我</button>
<p id="demo"></p>
<script>
demoP = document.getElementById("demo");
var numbers = [4, 9, 16, 25];
function myFunction(item, index) {
demoP.innerHTML = demoP.innerHTML + "index[" + index + "]: " + item + "<br>";
}
</script>
输出结果
index[0]: 4
index[1]: 9
index[2]: 16
index[3]: 25
5、indexOf()在数组中查找指定元素。
var fruits = ["Banana", "Orange", "Apple", "Mango"];
var a = fruits.indexOf("Apple");
结果 2
6、join()将数组的所有元素转化为字符串。
var fruits = ["Banana", "Orange", "Apple", "Mango"];
var energy = fruits.join();
结果
Banana,Orange,Apple,Mango
7、lastIndexOf()在数组中反向查找。
var fruits = ["Banana", "Orange", "Apple", "Mango"];
var a = fruits.lastIndexOf("Apple");
结果 2
8、map()从数组的元素中,计算出新的数组。
var numbers = [4, 9, 16, 25];
function myFunction() {
x = document.getElementById("demo")
x.innerHTML = numbers.map(Math.sqrt);
}
结果 2,3,4,5
9、pop()移除数组最后一个元素。
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.pop();
返回 Banana,Orange,Apple
10、push()把元素添加到数组尾部。
var` `fruits = [``"Banana"``, ``"Orange"``, ``"Apple"``, ``"Mango"``];``fruits.push(``"Kiwi"``)``结果输出``Banana,Orange,Apple,Mango,Kiwi
11、reduce()从数组的元素中,计算出一个值。
var` `numbers = [65, 44, 12, 4];`` ` `function getSum(total, num) {`` ``return` `total + num;``}``function myFunction(item) {`` ``document.getElementById(``"demo"``).innerHTML = numbers.reduce(getSum);``}``输出结果 125
12、reduceRight()从右往左缩减数组。
var numbers = [65, 44, 12, 4];
function getSum(total, num) {
return total + num;
}
function myFunction(item) {
document.getElementById("demo").innerHTML = numbers.reduceRight(getSum);
}
输出结果 125
13、reverse()在原数组中颠倒元素的顺序。
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.reverse();
输出结果
Mango,Apple,Orange,Banana
14、shift ()移除数组的第一个元素。
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.shift()
结果
Orange,Apple,Mango
15、slice()返回数组的一部分。
var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var citrus = fruits.slice(1,3);
结果输出 Orange,Lemon
16、some()测试是否至少有一个数组元素能让断言函数为真。
var ages = [3, 10, 18, 20];
function checkAdult(age) {
return age >= 18;
}
function myFunction() {
document.getElementById("demo").innerHTML = ages.some(checkAdult);
}
输出结果 true
17、sort ()在原数组中对数组元素进行排序。
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();
输出结果 Apple,Banana,Mango,Orange
18、splice()插入、删除或替换数组元素。
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.splice(2,0,"Lemon","Kiwi");
输出结果 Banana,Orange,Lemon,Kiwi,Apple,Mango
19、toLocaleSTring()将数组转化为本地化字符串。
var d=new Date();
var n=d.toLocaleString();
输出结果 2019/11/7 下午4:59:41
20、toString ()将数组转化为字符串。
var d=new Date();
var n=d.toString();Thu Nov 07 2019 17:00:09 GMT+0800 (中国标准时间)
21、unshift()在数组头部插入元素。
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.unshift("Lemon","Pineapple");
fruits 将输出:
Lemon,Pineapple,Banana,Orange,Apple,Mango
Number的常用方法
toString() 数字转字符串
var num = 10;
var v = num.toString();
console.log(v);
123
toFixed(2) 保留两位小数
var num = 10;
var num1 = num.toFixed(2);
console.log(num1); 打印结果 10.00
var num = 10.752;
var num1 = num.toFixed(1); 打印结果:10.8 有四舍五入
## 注意,toFixed方法发返回的是一个字符串。
12345678
isNaN(“abc”) 判断一个数值是否NaN类型
isNaN("abc"); 返回true
判断一个数值是否NaN类型。
123
parseInt(str) 字符串转数字
var str = '123abc';
var num = praseInt(str);
console.log(num); 打印123,,遇到非数值的时候解析就会停下来。
123
Number('abc') 返回NaN
Number('123') 返回123