文章目录
codewars-js练习
2021/4/1
github 地址
【1】<7kyu>【Thinkful - String Drills: Repeater】
example:
Repeater.repeat("a", 5)//"aaaaa"
solution
<script type="text/javascript">
function repeater(string, n){
var str = string;
for(var i=0;i<n-1;i++){
str = str + string;
}
return str;
}
// 验证
console.log(repeater('a', 5));//'aaaaa'
console.log(repeater('Na', 16));//'NaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNa'
console.log(repeater('Wub ', 6));//'Wub Wub Wub Wub Wub Wub '
</script>
【2】<7kyu>【Char Code Calculation】
返回差值
example:
'ABC' --> 'A' = 65, 'B' = 66, 'C' = 67 --> 656667
total1 = 656667
^
total2 = 656661
^
(6 + 5 + 6 + 6 + 6 + 7)
- (6 + 5 + 6 + 6 + 6 + 1)
-------------------------
6
solution
<script type="text/javascript">
function calc(x){
// console.log(x)
var arr = x.split('');
var temp = [];
for(var i = 0;i<arr.length;i++){
temp.push(arr[i].charCodeAt())
}
var str = temp.join('');
var str1 = JSON.parse(JSON.stringify(str));
str = str.replace(/[7]/g,1);
// console.log(str1,str)
var a = str.split('').reduce((total,cur)=>parseInt(total)+parseInt(cur),0);
var b = str1.split('').reduce((total,cur)=>parseInt(total)+parseInt(cur),0);
return b-a;
}
// 验证
console.log(calc('ABC'));//6
console.log(calc('abcdef'));// 6
console.log(calc('ifkhchlhfd'));// 6
console.log(calc('aaaaaddddr'));//30
console.log(calc('abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'));// 96
</script>