大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE稳定放心使用
-
js自动插入分号规则
a. 什么时候需要写分号 什么时候不能写分号
要有换行符,且下一个符号是不符合语法的,那么就尝试插入分号。
有换行符,且语法中规定此处不能有换行符,那么就自动插入分号。
源代码结束处,不能形成完整的脚本或者模块结构,那么就自动插入分号。no LineTerminator here 规则表示它所在的结构中的这一位置不能插入换行符。
带有标签的continue语句 不能在continue后插入换行 带标签的break语句 不能在break后插入换行 return后不能插入换行 后自增、后自减运算符前不能插入换行 throw和Exception之间不能插入换行 凡是async关键字,后面都不能插入换行 箭头函数的箭头前,也不能插入换行 yield之后,不能插入换行
带换行符的注释也被认为是有换行符
一行开头是括号或者方括号的时候加上分号就可以了,其他时候全部不需要let a = 1 void function(a){ console.log(a); }(a); *: void 前接1是不合法的 所有会在 1 后加上 ' ; '
-
不写分号需要注意的情况
A. 以花括号开头的语句(function(a){ console.log(a); })()/*这里没有被自动插入分号*/ (function(a){ console.log(a); })() B. 以数组开头的语句 var a = [[]]/*这里没有被自动插入分号*/ [3, 2, 1, 0].forEach(e => console.log(e)) C. 以正则表达式开头的语句 var x = 1, g = {test:()=>0}, b = 1/*这里没有被自动插入分号*/ /(a)/g.test("abc") console.log(RegExp.$1) D. 以Template开头的语句 var f = function(){ return ""; } var g = f/*这里没有被自动插入分号*/ `Template`.match(/(a)/); console.log(RegExp.$1)
-附录. void操作
功能: 因为undefined在js中不是保留字 所以
function joke() {
var undefined = “hello world”;
console.log(undefined); //会输出”hello world”
}
console.log(undefined); //输出undefined
1. 什么是void
void是一元运算符,出现在操作数的左边,操作数可以是任意类型的值,
void右边的表达式可以是带括号形式(例如:void(0)),也可以是不带括号的形式(例如:void 0)。
2. void的功能
void的作用便是返回undefined,在它右边的操作数会正常计算,但是无论结果是什么,void都会返回undefined。
javascript:void(0)
void function(){};
void作用:
通过采用void 0取undefined比采用字面上的undefined更靠谱更安全,应该优先采用void 0这种方式。
填充<a>的href确保点击时不会产生页面跳转; 填充<image>的src,确保不会向服务器发出垃圾请求。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/179528.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...