題目描述:判斷字串中重復次數最多的字符
// 解決思路: // 1.判斷字符重復的方法 // 創建空陣列,利用鍵值對形式對每個字符進行計數 // 用到 采用for回圈結合if判斷 物件[鍵] 是否有值,無則undefined // arr.charAt(i)取得arr中i索引號下的元素 // 2.對重復的字符進行計數 // 若物件中無某字符,則賦值1;有則加1 // 3.找字符計數最大的一個 // 采用 for屬性in obj 對 物件的值 進行大小比較
點擊查看代碼
function mostLetter(str){
var obj = {};
for(var i =1;i<=str.length;i++){
if(!obj[str.charAt(i)]){
obj[str.charAt(i)] = 1
}else{
obj[str.charAt(i)]++;
}
}
var maxLetter = '';
var iMost = 0;
for(var i in obj){
if(obj[i]>iMost){
iMost = obj[i];
maxLetter = i;
}
}
return '最多的字符是' + maxLetter + '次數為' + iMost;
}
var str ='dhhshhsajjaajiiiiiii'
console.log(mostLetter(str))
題目要求: 字串反轉 ‘12345’,‘54321’
// 解題思路1:將字串轉化為陣列,使用reverse(),再通過join()拼接起來
// 解題思路2:準備一個空的陣列用來盛放翻轉的字符,最后join拼接陣列
點擊查看代碼
<body>
題目要求: 字串反轉 ‘12345’,‘54321’
<div id="demo"></div>
<div id="demo1"></div>
<script>
// 解題思路1:將字串轉化為陣列,使用reverse(),再通過join()拼接起來
function reverseStr1(str){
return str.split('').reverse().join('')
}
// 解題思路2:準備一個空的陣列用來盛放翻轉的字符,最后join拼接陣列
function reverseStr2(str){
var arr = [];
for(var i = 0;i<str.length;i++){
arr[str.length-1-i] = str[i]
}
return arr.join('')
}
var str = 'abcdrfff'
document.getElementById('demo').innerHTML = reverseStr1(str);
document.getElementById('demo1').innerHTML = reverseStr2(str);
</script>
</body>
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/518893.html
標籤:JavaScript
下一篇:什么是閉包?閉包詳解
