用 JavaScript 查詢字串的第一個非重複字元
我們要求編寫一個 JavaScript 函式,將字串作為第一個且唯一的引數傳入。
該函式應找到並返回它在字串中遇到的第一個字元的索引,該字元在字串中只出現一次。
如果字串不包含任何唯一字元,該函式應返回 -1。
例如 −
如果輸入字串是 −
const str = 'hellohe';
則輸出應為 −
const output = 4;
示例
以下為程式碼 −
const str = 'hellohe';
const firstUnique = (str = '') => {
let obj = {};
for(let i = 0; i < str.length; i++){
if(str[i] in obj){
let temp = obj[str[i]];
let x = parseInt(temp[0]);
x += 1;
temp[0] = x;
obj[str[i]] = temp;
} else {
obj[str[i]] = [1, i]
}
}
let arr = Object.keys(obj);
for(let i = 0; i < arr.length; i++){
let z = obj[arr[i]]
if(z[0] === 1){
return z[1];
}
}
return -1;
};
console.log(firstUnique(str));輸出
以下是控制檯輸出 −
4
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP