function count(str) {
var resultObj = {};
var i = 0;
var strLen = str.length;
for (;i < strLen; i++) {
var curChar = str.charAt(i);
if(resultObj[curChar]) {
resultObj[curChar] ++;
}else {
resultObj[charAt = 1];
}
}
return resultObj;
}
完善函数 convertToCamelCase 的功能。函数 convertToCamelCase 会转换传入的字符串参数 string 为驼峰格式,并返回转换后的字符串。具体要求如下:
1.参数 string 是以中划线(-)连接单词的字符串,需将第二个起的非空单词首字母转为大写,如 -webkit-border-radius 转换后的结果为 webkitBorderRadius。
2.返回转换后的字符串
function unique(numbers) {
// 创建一个结果数组
var resultArr = [];
// 循环遍历原数组,每次抽出一个数字进行判断
for(var i = 0; i < numbers.length; i++){
// 标识符:是否重复
var isRepeat = false;
// 循环遍历结果数组,进行对比
for(var j = 0; j < resultArr.length; j++){
if(numbers[i] == resultArr[j]){
isRepeat = true;
// 如果发现重复,则不需进行后面判断了
break;
}
}
// 如果没重复,则存进结果数组
if(!isRepeat){
resultArr.push(numbers[i]);
}
}
return resultArr;
}
第二种方法
function unique(numbers) {
// 创建一个新的数组
var resultArr = [];
var numbersObj = {};
var i = 0;
for(; i < numbers.length; i++){
// 如果该数字还没见过,则放进新数组中
if(!numbersObj[numbers[i]]){
resultArr.push(numbers[i]);
numbersObj[numbers[i]] = 1;
}
}
return resultArr;
完善函数 gcd
的功能。函数 gcd 会计算并返回传入的两个正整数参数之间最大的公约数
function gcd(number1, number2) {
// 创建一个表示余数的变量
var remainder = 0;
// 通过循环计算
do {
// 更新当前余数
remainder = number1 % number2;
// 更新数字1
number1 = number2;
// 更新数字1
number2 = remainder;
} while (remainder !== 0);
return number1;
}
第二种方法
function gcd(number1, number2) {
if(number2 == 0) {
return number1;
} else {
return gcd(number2, number1 % number2);
}
}