- 习题
- LoopingaTriangle
- FizzBuzz
- 棋盘
习题
如果你不清楚在哪里可以找到习题的提示,请参考本书的简介部分。
每个练习都以问题描述开始。 阅读并尝试解决这个练习。 如果遇到问题,请考虑阅读练习后的提示。 本书不包含练习的完整解决方案,但您可以在 eloquentjavascript.net/code 上在线查找它们。 如果你想从练习中学到一些东西,我建议仅在你解决了这个练习之后,或者至少在你努力了很长时间而感到头疼之后,再看看这些解决方案。
LoopingaTriangle
编写一个循环,调用 7 次console.log函数,打印出如下的三角形:
####################
这里给出一个小技巧,在字符串后加上.length可以获取字符串的长度。
let abc = "abc";console.log(abc.length);// → 3
FizzBuzz
编写一个程序,使用console.log打印出从 1 到 100 的所有数字。不过有两种例外情况:当数字能被 3 整除时,不打印数字,而打印"Fizz"。当数字能被 5 整除时(但不能被 3 整除),不打印数字,而打印"Buzz"。
当以上程序可以正确运行后,请修改你的程序,让程序在遇到能同时被 3 与 5 整除的数字时,打印出"FizzBuzz"。
(这实际上是一个面试问题,据说剔除了很大一部分程序员候选人,所以如果你解决了这个问题,你的劳动力市场价值就会上升。)
棋盘
编写一个程序,创建一个字符串,用于表示8×8的网格,并使用换行符分隔行。网格中的每个位置可以是空格或字符"#"。这些字符组成了一张棋盘。
将字符串传递给console.log将会输出以下结果:
# # # ## # # ## # # ## # # ## # # ## # # ## # # ## # # #
当程序可以产生这样的输出后,请定义绑定size=8,并修改程序,使程序可以处理任意尺寸(长宽由size确定)的棋盘,并输出给定宽度和高度的网格。
