JS-task2

NaN是什么? 有什么特别之处?

NaN是Not a Number的缩写,即非数值。是一个特殊的数值,用来表示一个本来要返回数值的操作数未返回数值的情况,来代替报错。

  • 任何涉及NaN的操作都会返回NaN。
  • NaN与任何值都不相等,包括NAN本身。

break与continue有什么区别?

  • break 用于强制退出循环体,执行循环后面的语句
  • continue 用于退出本次循环,执行下次循环
for(var i = 1; i< 10; i++){
    if(i % 4 === 0){
        continue;
    }
     console.log(i);   //1,2,3
}
for(var i = 1; i< 10; i++){
    if(i % 4 === 0){
        continue;
    }

    console.log(i); // 1,2,3,5,6,7,9
}

switch case 语句中的 break 有什么作用?

switch中的break语句确保程序立即从相关的case子句中跳出 switch 并接着执行 switch 之后的语句。若 break 被省略,程序会继续执行 switch 语句中的下一条语句。

以下代码的输出结果是? 为什么

var a = 1;
 var b = 3;
 console.log( a+++b );

输出4。后置自增运算符(++)优先级>前置自增运算符(--)>加法运算符(+),故a+++b=(a++)+b,输出4。

遍历数组,把数组里的打印数组每一项的平方

var arr = [3,4,5]

var arr = [3,4,5];
for (var i = 0; i < arr.length; i++){
    console.log(arr[i]*arr[i])  //9,16,25
}

以下代码输出结果是? 为什么

  1.  var a = 1, b = 2, c = 3;
     var val = typeof a + b || c >0
     console.log(val) 
    

输出“number2”。因为typeof优先级最高,其次是“+”号,其次是">",最后是“||”。typeof a
+b得到“number2”,转换成boolean为true,由于逻辑运算符的“短路”特性,故直接输出“number2”.

  1.  var d = 5;
     var data = d ==5 && console.log('bb')
     console.log(data)
    

输出“bb undifined”。"=="号优先级大于逻辑与“&&”,“d == 5”得到true,由于逻辑与的特性,故继续执行console.log('bb'),得到输出“bb”。由于console.log本身返回undifined,故输出“undifined”。

  1.  var data2 = d = 0 || console.log('haha')
    console.log(data2)
    

输出“haha undifined”。“||”优先级大于赋值“=”。0转换为boolean值为false,根据逻辑或的特性,继续向下执行console.log('haha'),输出“haha”,由于console.log本身返回undifined,故输出“undifined”。

  1.  var x = !!"Hello" + (!"world", !!"from here!!");
     console.log(x)
    

输出2。括号优先级最高,根据有逗号则执行所有内容并返回逗号后面的一项,故(!"world",!!"from here!!")返回!!"from here!!"。又因为逻辑非“!”返回boolean类型,故返回true。故!!"hello"也返回true。x = true + true = 2,故最终返回2。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.JavaScript 定义了几种数据类型? 哪些是原始类型?哪些是复杂类型?原始类型和复杂类型的区别是什么? ...
    saintkl阅读 2,744评论 0 0
  • 变量 声明变量 命名变量区分大小写的语言第一个字符是字母或下划线_,数字不能作为第一个字符字符必须是字母,数字或者...
    flyingtoparis阅读 4,223评论 0 0
  • 语句 JavaScript程序的执行单位为行(line),也就是一行一行地执行。一般情况下,每一行就是一个语句。 ...
    米塔塔阅读 3,269评论 1 10
  • 前端07班 王语句JavaScript程序的执行单位为行(line),也就是一行一行地执行。一般情况下,每一行就是...
    ea203453e188阅读 4,415评论 0 4
  • 这是 chaim “ 365 日写作计划”第 15 天的写作内容。 今天 8 点 40 起床,洗漱过后,洗了一个苹...
    chaim阅读 1,833评论 0 0