前言
一开始,关于在node.js句末不加分号,我是拒绝的。因为有时不加分号会报错。
我觉得node.js在语法层面挺拧巴的,要么就像PHP那样严格要求加分号,要么就像python一律不加分号。而node.js却表现出一副欲拒还迎的姿态,让人感觉就是既要拥抱变化,又要抱残守缺。
加不加分号,这是一个问题
直到有一天我了解了加不加分号的场景,才终于释然
一言以蔽之:当代码是以 ( [ ` 这些符号开头时,就需要在代码之前加上分号,其他场景都不需要加分号
let msg = '加不加分号呢'
(function () { console.log('我是一个匿名函数') }())
结果报错:
我是一个匿名函数
/Users/airmb/code/node/01/04.js:3
(function () {
^TypeError: "加不加分号呢" is not a function
at Object.<anonymous> (/Users/airmb/code/node/01/04.js:3:1)
at Module._compile (module.js:652:30)
at Object.Module._extensions..js (module.js:663:10)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)
at Function.Module.runMain (module.js:693:10)
at startup (bootstrap_node.js:191:16)
at bootstrap_node.js:612:3
正确的写法:
let msg = '加不加分号呢' ;(function () { console.log('我是一个匿名函数') }())
同理,以 [ 或 ` 开头的代码应该这么写:
;['章北海', '罗辑'].forEach(function (item) { console.log(item) }) ;` 宇宙中究竟有多少个文明? 高级文明会怎么对待地球? 是友善地相处? 还是残忍地消灭? 或者只是安静地观察? `.toString()
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。