导航


HTML

CSS

JavaScript

浏览器 & 网络

版本管理

框架

构建工具

TypeScript

性能优化

软实力

算法

UI、组件库

Node

冷门技能

for

for (var i = 0; i < 10; i++) {
	console.log(i);
}

⭐️ 步骤

// 1. 声明变量 i = 0
// 2. if (i < 10) 满足条件时: { // todo }
// 3. i++
// 4. if (i < 10) 不满足条件: 停止循环

⭐️ 改造

var i = 0;
for (; i < 10;) { // ; 和 ; 之间的,是个判断语句,返回的是 true or false
	console.log(i);
  i++;
}

⭐️ i++、++i

练习

打印 100 以内的数,跳过能被 7 整除或者个位数是 7 的数

for (var i = 0; i <= 100; i++) {
	if (i % 7 === 0 || i % 10 === 7) {
  	continue;
  }
  console.log(i);
}

打印 0 - 100 内的数;() 中只能有一句话,不能写比较;{} 中不能出现 i++, i--

var i = 101;
for (; i--;) {
  console.log(i); // 从 100 打印到 0
}

// hint: (i--) 的结果是 i = i - 1; (i--) 这个表达式的值是 i;
// 当 i = 100 时,(i--) 的结果 i = 100,但 (i--) 这个表达式的值此刻为 101
// 当 i = 1 时,(i--) 的结果 i = 0,但 (i--) 这个表达式的值此刻为 1
// 所以表达式还是个 true,执行循环体内容,此刻打印 i = 0;
// 最后一次表达式判断时,(i--) 的结果 i = -1,但 (i--) 这个**表达式**的值为 0,表达式结果 0
// 布尔值为 false,所以停止了 for 循环的执行,结束

10 的 n 次方

function fn(n) {
  var total = 1;
	for (var i = 0; i < n; i++) {
  	total *= 10;
  }
  return total;
}

n 的阶乘

定义:对于非负整数 n,阶乘 n! 表示从1到 n 之间所有整数的乘积 公式:n! = n * (n - 1) * (n - 2) * ... * 3 * 2 * 1

function fn(n) {
	var total = 1;
  for (var i = 1; i <= n; i++) {
  	total *= i;
  }
  return total;
}

打印 100 以内的质数

质数定义:质数又称素数。 一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数(规定1既不是质数也不是合数)。

var count = 0;
for (var i = 2; i <= 100; i++) { // 除数
	for (var j = 1; j <= i; j++) { // 从 1 到 100 都当做除数,一个个来
  	if (i % j === 0) { // 只要 i 这个被除数能被 j 整除,count就+1
    	count++;
    }
  }
  if (count === 2) { // 从1到自身%完之后,如果计数仅有两次,代表为质数(1和自身)
  	console.log(i);
  }
  count = 0; // 计数清零
}

while

var i = 0;
while (i < 10) {
	console.log(i);
  i++;
}

do-while

var i = 0;
do {
	console.log('循环');
  i++;
} while (i < 10);