今天做一个功能,发现函数return的数据并没有返回,经过尝试发现,js的for循环中的return除了会结束循环,也会终止循环外后续代码的执行,如下面的例子
function get123() { for (let i = 0; i <=4; i++) { if (i === 4) return; } console.log(123); } get123(); // undefined
例子中的123并没有被打印,不过把return换成break就没问题了
function get123() { for (let i = 0; i <=4; i++) { if (i === 4) break; } console.log(123); } get123(); // 123
虽然这不是什么技术难点,但也考验了基本功是否扎实,还是得不断学习才行