每日演算法
今日是:
1、將字串轉換為駝峰格式
2、判斷字串中是否有連續重復的字符
將字串轉換成駝峰格式
// css 中經常有類似 background-image 這種通過 - 連接的字符,通過 javascript 設定樣式的時候需要將這種樣式轉換成 backgroundImage 駝峰格式,請完成此轉換功能:// 以 - 為分隔符,將第二個起的非空單詞首字母轉為大寫 // -webkit-border-image 轉換后的結果為 webkitBorderImage // “font-size” // “fontSize”
/*題目分析: 1.明確駝峰格式是第二個字串開始的字串首字母大寫,第一個字串首字母小寫 2.思路:首先通過-,可以判斷字串首字母的位置 3.一般情況:第一個要求是去掉-后,第一個字串不變,第二個字串的首字母大寫 特殊情況:-在開頭,第一個字串在-后面, 4.解決思路:先按照一般情況處理,最后取出字串的首字母轉換為小寫,符合題意 */
點擊查看代碼
function cssStyle(str){
var arr = str.split('')
while(arr.indexOf('-')!==-1){
//從頭開始檢索,回傳-的索引位置
const index =arr.indexOf('-');
// 洗掉從index位置開始的一個元素
arr.splice(index,1);
// -后面的第一個字母遷移到-的位置,轉換為大寫
arr[index] = arr[index].toUpperCase()
}
arr[0] = arr[0].toLowerCase();
return arr.join('');
}
var str = '-font-size';
console.log(cssStyle(str))
字串中連續重復的字符
// 給定字串 str,檢查其是否包含連續重復的字母(a-zA-Z),包含回傳 true,否則回傳 false// 示例1
// 輸入
// 'rattler'
// 輸出
// true
// 思路:注意連續重復,是指相連的兩個字符相同,若有這種字符則能輸出布林值,要考慮是采用判斷輸出,還是采用方法,
// 這里兩種方法采用test判斷str中是否有符合正則式的內容,find是判斷字串切割形成的陣列中是否有符合函式的元素
// 易錯:沒有考慮到連續情況
點擊查看代碼
// 方法1:
function containsRepeatingLetter(str) {
return /([a-zA-Z])\1/.test(str);
}
// 方法2:
function aa(str){
let arr = str.split('')
let item = arr.find((item,index) => arr[index] == arr[index+1])
return item ? true : false
}
var str = 'ralerr'
console.log(containsRepeatingLetter(str))
console.log(aa(str))
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/518778.html
標籤:其他
上一篇:Dva.js 快速上手指南
