这是我参与11月更文挑战的第9天,活动详情查看:2021最后一次更文挑战
今天博主看到天眼查的一道面试题,让候选人说出如何使用JS打印九九乘法表,这道题目对很多人来说可能很简单,但是博主还是想和大家分享一下,如何解决这个问题,分析下这个问题的思路,以帮助大家巩固基础,让我们来一起探究这个问题吧~
题目描述
使用JS打印九九乘法表,目标是实现下图的样式。
解题思路
从上图的九九乘法表我们能够看出什么规律,总共有九行,从第二行开始每一行比前一行多一列,这就是我们的核心解决思路,通过两层循环即可解决这个问题,外层循环用于控制行数,总共有九行,也就是r从1-9,内层循环从1到r即可,然后通过模板字符串进行一个字符串拼接即可,每次内层循环的for结束后,便开始打印当前行的结果。
// 外层循环控制的是行数,表示的是1-9行 // 内层循环控制的是列数 for (let r = 1; r <= 9; r++) { let char = ""; for (let c = 1; c <= r; c++) { char += (`${c}*${r} = ${c*r}\t`) }; console.log(char); } 复制代码
题目反思
通过这个题目,我想告诉大家的是,一定要重视基础,不要小看任何基础的题目,一旦在面试的时候遇到了,不一定就能做得出来,而这些基础的题目,反而容易造成面试官对我们的真实水平的误判,因此,请大家一定要注意基础题目的解法。
- 九九乘法表的本质就是从打印顺序中找出规律,通过循环来控制行列之间的关系,内层循环次数和外层循环次数的关系是本题的核心。