題目描述
css 中經常有類似 background-image 這種通過 - 連接的字符,通過 javascript 設置樣式的時候需要將這種樣式轉換成 backgroundImage 駝峰格式,請完成此轉換功能
1. 以 - 為分隔符,將第二個起的非空單詞首字母轉為大寫
2. -webkit-border-image 轉換后的結果為 webkitBorderImage
1. 以 - 為分隔符,將第二個起的非空單詞首字母轉為大寫
2. -webkit-border-image 轉換后的結果為 webkitBorderImage
輸入例子:
cssStyle2DomStyle('font-size')
輸出例子:
fontSize
題目解析
1.將輸入字符串分割成字符數組 sName.split('')
2.首先判斷字符數組的第一個字符是不是‘-’,如果是,則刪除‘-’。splice(0,1)
3.逐個遍歷整個字符數組,如果檢索到某個位置字符是‘-’,則刪除,並將刪除后當前位置上的字符替換為大寫形式。splice(i,1) 、 toUpperCase()
4.將字符數組轉化為字符串返回輸出。join('')
示例代碼
1 function cssStyle2DomStyle(sName) { 2 var arr = sName.split(''); 3 if(arr[0]=='-'){ 4 arr.splice(0,1); 5 } 6 for(var i=0,len=arr.length; i<len; i++){ 7 if(arr[i]=='-'){ 8 arr.splice(i,1); 9 arr[i]=arr[i].toUpperCase(); 10 } 11 } 12 return arr.join(''); 13 } 14 //console.log(cssStyle2DomStyle('-webkit-border-image'));
知識點總結:
split() 方法用於把一個字符串分割成字符串數組

注釋:如果把空字符串 ("") 用作 separator,那么 stringObject 中的每個字符之間都會被分割。
splice() 方法向/從數組中添加/刪除項目,然后返回被刪除的項目。(該方法會改變原始數組,不同於slice()不會影響原始數組)

toUpperCase() 方法用於把字符串轉換為大寫。返回一個新字符串。同理,toLowerCase() 方法用於把字符串轉換為小寫。
join() 方法用於把數組中的所有元素放入一個字符串。元素是通過指定的分隔符進行分隔的。
參考鏈接:
鏈接:https://www.nowcoder.com/questionTerminal/2ded24e34ec34325a62d42d0c8479bae
來源:牛客網
