老师,几道JS的基础题,我比较糊涂
来源:1-1 初识JavaScript
applefishfish
2022-08-26 00:29:39
感谢老师的解答:
//第一题
var result = 0
for (var 1=0; i<5; i++){
result+=2 // 我知道这里是result=result+2
}
console.log(result); //i<5是一共循环5次呢还是4次?五次是:0+2+1+2+2+2+3+2+4+2 = 20 吗?
//同样的问题,我还是不明白,看来for循环没有学好,请问是在第几章,我要再看看,但是能先再帮我解答一下吗?
for (var i=0; i<=5;i++) {
console.log ('hello');这个应该是循环5次吧因为是i<=5,如果i<5就是循环4次吗?
}
//第二题这个输出是7还是undefined?
console.log(result);
var result = 7; //先定义后输出,如果先输出后定义是不是就是undefined?
//第三题结果是23,为什么结果是23呢,应该定义为var x=23呀?
var x=true
x=23
console.log(x)
//第四题以下这个是什么?这个是代表biglnt吗?为什么不是number?
var x=0 !=1;
//第五题,这是输出的circle吗,请问throw和catch的用法
try{
throw new Error();
console.log('square');
}catch(err){
console.log('circle')
}
//第六题,这是新的概念,请问这个toBe是什么意思,是输出结果是6,所以这段代码是正确的吗?
function subtract(a,b){
return a-b
}
expect(subtract(10,4)).toBe(6);
1回答
同学你好,解答如下:
1、

直接在循环中打印一下看看结果,如下:


1)

这里是循环5次,因为i<=5那么这里会包含5,所以循环了5次。分别是012345。如果小于5那么则不包含5所以循环是4次。这里要注意的是循环开始时是是从0开始的,它只是初始值并不是循环的次数。


for循环的课程,同学可以在复习一下:https://class.imooc.com/lesson/2120#mid=50321
2、变量提升的问题,相当于如下:

这里是变量提升的知识点,相当于声明提前,赋值阶段原地不动,所以这里会打印出undefined。
3、变量覆盖。


先声明了变量,后面直接进行对其覆盖重新赋值。则会改变。
4、解答如下:

5、第五题是try、catch。这里会输出circle因为同学代码try中没有任何错误。

6、同学可以参考看看--->这篇帖子。
以上题目中涉及到的基础,建议同学在复习一下。
祝学习愉快!
相似问题