各种函数方法

1、求n!,用递归来实现

function fun(num) {

    if (num == 1 || num == 0) {
        return 1
    } else if (num < 1) { return false }
    return num*fun(num-1)
}

注意:n! (n的阶乘)这道题, 0! = 1.

2、写一个函数,返回参数的平方和

function sumOfSquares(){
    var res = 0;
    for (var i in arguments){
        if (typeof arguments[i] !== 'number') {
            return 'you entered a wrong number';
        }
    }
    for (var j in arguments){
        res += arguments[j]*arguments[j];
    }
    return res;
}

var result = sumOfSquares(2,3,4);
var result2 = sumOfSquares(1,3);
console.log(result);  //29
console.log(result2); //10

3、

补全如下代码,让输出结果为字符串: hello\饥人谷

var str = //补全代码
console.log(str)
var str = "hello\\"+"\\饥人谷";
console.log( str )

4、\n是一个换行符,占一个字符

5、写一个函数,判断一个字符串是回文字符串,如 abcdcba是回文字符串, abcdcbb不是

//判断一个字符串是不是回文, 那这个函数的命名一般为 isXXX
//函数的返回值一般是 true 或者 false
function isPalindrome(str) {
  return str === str.split('').reverse().join('')
}

6、写一个函数,统计字符串里出现出现频率最多的字符

function getMostFreq(str) {
  var dict = {}
  var max = 0
  var maxCh 
  for(var i = 0; i < str.length; i++) {
    var ch = str[i]
    if(dict[ch] === undefined) {
      dict[ch] = 1
    }else {
      dict[ch]++
    }
    if(dict[ch] > max){
      max = dict[ch]
      maxCh = str[i]
    }
  }
  return {index: max, ch: maxCh}
}

console.log(getMostFreq('helloooo worlddd'))

7、写一个camelize函数,把my-short-string形式的字符串转化成myShortString形式的字符串,如

camelize("background-color") == 'backgroundColor'
camelize("list-style-image") == 'listStyleImage'
function camelize(str) {
  var arr = str.split('-')
  for(var i = 1; i < arr.length; i++){
    arr[i] = arr[i][0].toUpperCase() + arr[i].substr(1)
  }
  return arr.join('')
}
console.log( camelize("background-color") )
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容