JavaScript小函数(一)
最近玩编程游戏觉得很有意思,个人觉得有两款值得为新手推荐。
1.CodeCombat。www.codecombat.cn
2.Codewars。 www.codewars.com
自己觉得codewars低级别的题目都比较难。值得自己去学习,这里在今后一段时间可能会list几个题目来强化记忆。
编写accum函数,实现如下功能:
accum(“abcd”) –> “A-Bb-Ccc-Dddd”
accum(“RqaEzty”) –> “R-Qq-Aaa-Eeee-Zzzzz-Tttttt-Yyyyyyy”
accum(“cwAt”) –> “C-Ww-Aaa-Tttt”
我的函数:
function accum(s) {
var start_str = s;
var resurt_str = "";
for(var i=0;i<start_str.length;i++){
var mystr = start_str.substr(i,1).toUpperCase();
for(var j=i;j>0;j--){
mystr += start_str.substr(i,1).toLowerCase();
}
if(i != start_str.length-1){
mystr += '-';
}
resurt_str += mystr;
}
return resurt_str;
}
var start_str = s;
var resurt_str = "";
for(var i=0;i<start_str.length;i++){
var mystr = start_str.substr(i,1).toUpperCase();
for(var j=i;j>0;j--){
mystr += start_str.substr(i,1).toLowerCase();
}
if(i != start_str.length-1){
mystr += '-';
}
resurt_str += mystr;
}
return resurt_str;
}
人家的函数
function accum(str) {
var letters = str.split(“ ”);
var result = [];
for (var i = 0; i < letters.length; i++) {
result.push(letters[i].toUpperCase() + Array(i + 1).join(letters[i].toLowerCase()));
}
return result.join('-');
}