1. 程式人生 > 其它 >面試題系列---【字串常用方法、陣列常用方法、Number常用方法】

面試題系列---【字串常用方法、陣列常用方法、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

parseFloat()將一個字串轉換為浮點數

Numble()將所有資料型別轉化為數字