习题
最小值
前一章介绍了标准函数Math.min,它可以返回参数中的最小值。我们现在可以构建相似的东西。编写一个函数min,接受两个参数,并返回其最小值。
// Your code here.console.log(min(0, 10));// → 0console.log(min(0, -10));// → -10
递归
我们已经看到,%(取余运算符)可以用于判断一个数是否是偶数,通过使用% 2来检查它是否被 2 整除。这里有另一种方法来判断一个数字是偶数还是奇数:
0是偶数
1是奇数
对于其他任何数字N,其奇偶性与N–2相同。
定义对应此描述的递归函数isEven。 该函数应该接受一个参数(一个正整数)并返回一个布尔值。
使用 50 与 75 测试该函数。想想如果参数为 –1 会发生什么以及产生相应结果的原因。请你想一个方法来修正该问题。
// Your code here.console.log(isEven(50));// → trueconsole.log(isEven(75));// → falseconsole.log(isEven(-1));// → ??
字符计数
你可以通过编写"string"[N],来从字符串中得到第N个字符或字母。 返回的值将是只包含一个字符的字符串(例如"b")。 第一个字符的位置为零,这会使最后一个字符在string.length - 1。 换句话说,含有两个字符的字符串的长度为2,其字符的位置为 0 和 1。
编写一个函数countBs,接受一个字符串参数,并返回一个数字,表示该字符串中有多少个大写字母"B"。
接着编写一个函数countChar,和countBs作用一样,唯一区别是接受第二个参数,指定需要统计的字符(而不仅仅能统计大写字母"B")。并使用这个新函数重写函数countBs。
// Your code here.console.log(countBs("BBC"));// → 2console.log(countChar("kakkerlak", "k"));// → 4
