vip10-1230作业

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


vip10-1230作业_第1张图片
问题1
  • a声明为1,a+++a可以分解为(a++)+a,a++优先级比+高,a++先赋值再加入运算,a++ === 1。a=2因此1+2=3

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


问题2
  • a+++b=(a++)+b,a++先赋值为1,然后自加。1+3=4

3:void 0undefined在使用场景上有什么区别?


  • undefined是一个全局属性,表示未定义或者定义了没赋值void 0是一个一元运算符,输入任何参数都会返回undefined
  • undefined在低版本IE中能被重写,在ES5中是全局对象中的一个只读属性,不能被重写。但是在局部作用域中,可以被重写。非严格模式下,undefuned可以重写,严格模式不能重写。
  • void 0是为了防止undefined被重写而出现判断不准确的情况。

4


val

优先级是 typeof> +> >> ||. typeof a结果是number, ||左侧结果是 number2,右侧是true。number2转换成boolean是true,直接返回左边的值 number2

vip10-1230作业_第2张图片
data

优先级: ==> &&> =

  1. var data = true && console.log('bb')
  2. 与运算符里,左边为真,返回右边的值。console.log作为函数是没有返回值的,没有返回值则默认返回undefined。
  3. 结果是undefined。

vip10-1230作业_第3张图片
Paste_Image.png

优先级是 ||> =,先计算0||undefined,0转换为false,结果是undefined。

Paste_Image.png

优先级: "()"> +> =
(!"world", !!"from here!!")先算括号里的,返回逗号后的值,!!转化为true。
true+true转换成1+1 ,最后结论是2

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

vip10-1230作业_第4张图片
Paste_Image.png

5 遍历 JSON, 打印里面的值

vip10-1230作业_第5张图片
Paste_Image.png

你可能感兴趣的:(vip10-1230作业)