已知有字符串foo=”get-element-by-id”,写一个function将其转化成驼峰表示法”getElementById”。
直接上代码:
var foo = "get-element-by-id"
var arr = foo.split("-");
console.log(arr); //["get", "element", "by", "id"]
for (var i = 1; i < arr.length; i++) {
arr[i] = arr[i].charAt(0).toUpperCase() + arr[i].slice(1);
}
console.log(arr) //["get", "Element", "By", "Id"]
var arr = arr.join("") //getElementById
console.log(arr);
解释:
var arr = foo.split("-") split是将字符串分割为字符串数组 for (var i = 1; i < arr.length; i++) { arr[i] = arr[i].charAt(0).toUpperCase() + arr[i].slice(1); } 注意:这里i是从1开始,因为["get", "element", "by", "id"] 中的get的首字母不需要大写 arr[i].charAt(0).toUpperCase() 中charAt()是返回字符串中第几个字符,0代表返回第一个字符 toUpperCase转化为大写,arr[i].charAt(0).toUpperCase() 得到的是 E B I + arr[i].slice(1) 的意思是拼接E B I ,因为要拼接E B I,除了第一个get,其他都少了一个字母,所以是split(1) var arr = arr.join("") :关键是join方法,将数组放入一个字符串中,默认是以逗号隔开,写了"" 字符串就是一坨