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

data

优先级:==>&&>=

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

Paste_Image.png

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

Paste_Image.png

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

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

Paste_Image.png

5 遍历 JSON, 打印里面的值

Paste_Image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容