1.如已有字符串’get-element-by-id’,需要将其转换为getElementById
封装成function后具有一般性
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// var foo = 'get-element-by-id'
// //var foo='getElementById'
// var rs = foo.split('-');//返回的是数组类型的数据["get", "element", "by", "id"]
// //console.log(rs[1][0])//输出---e----由于数组中每一项是个字符串,rs[1]表示取数组中第二个元素(element)
// //rs[1][0]表示取elment字符串的第一个元素e
// var rs1 = rs[1][0].toUpperCase() + rs[1].substr(1, rs[1].length - 1);//截取字符串函数substr(start,end)
// for (var i = 1; i < rs.length; i++) {
// rs[i] = rs[i][0].toUpperCase() + rs[i].substr(1, rs[i].length - 1);//截取字符串函数substr(start,end)
// }
// //此时数组已经发生了改变
// console.log(rs);
// //将数组拼接成字符串.join(拼接方式)
// console.log(rs.join(''))
//将以上操作封装成一个函数
function toString(foo) {
//var foo = 'get-element-by-id'
var arr = foo.split('-');
for (var i = 1; i < arr.length; i++) {
arr[i] = arr[i][0].toUpperCase() + arr[i].substr(1, arr[i].length - 1);
}
// console.log(arr);
// console.log(arr.join(''))
return arr.join('')
}
var a = toString('get-element-by-id')
console.log(a)
</script>
</body>
</html>
总结:
这里使用到了js中的一些基本函数
1.foo.split(’-’);//对字符串根据特定的切割方式进行切割,返回的是数组类型的数据[“get”, “element”, “by”, “id”]
2.arr[i].substr(1, rs[1].length - 1),对指定字符串进行按长度分割–substr(start,end)
3.arr.join(’’)—将数组按特定的方式拼接成字符串(返回的是字符串类型)
如[“get”, “Element”, “By”, “Id”]-----getElementById
4.rs[1][0].toUpperCase()–将字符串元素小写转换成大写
rs[1][0]等价于rs[1].charAt(0)