位置: 编程技术 - 正文

JavaScript中的分号插入机制详细介绍(javascript 分号)

编辑:rootadmin

推荐整理分享JavaScript中的分号插入机制详细介绍(javascript 分号),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript分为,javascript分号的作用,js的分类,javascript分为哪两种数据类型,javascript 分割,javascript分为,javascript分为,javascript函数分类,内容如对您有帮助,希望把文章链接给更多的朋友!

仅在}之前、一个或多个换行之后和程序输入的结尾被插入

也就是说你只能在一行、一个代码块和一段程序结束的地方省略分号。

也就是说你可以写如下代码但是却不可以写的像下面代码一样,这样就报错了哦

仅在随后的输入标记不能解析时插入

也就是说分号插入是一种错误校正机制。看代码说话

所以你必须得注意下一条语句的开始,从而确定你是否能够合法的省略分号。

(、[、+、-、和/ 这五个字符开始的语句,那么最好前面不要省略分号。

举例说明一下哦本来你以为没有错误,但是解析器却解析成了如下语句因为第二句语句是以[开始的,所以解析器不会在第一条语句后自动插入分号,这样就解析成了如上所示,上面的式子解析时b['b'].forEach难道不是错的吗?

所以(、[、+、-、和/ 这五个字符开始的语句,那么最好前面不要省略分号。

想省略分号,有经验的程序员会在该语句的后面跟一个声明语句,以保证解析器解析正确。如下所示所以如果你需要省略分号,必须检查接下来的一行开始标记是否为上述五个字符导致解析器会禁用自动插入分号,或者你也可以在(、[、+、-、和/ 这五个字符前置一个分号

省略分号导致脚本连接问题

JavaScript中的分号插入机制详细介绍(javascript 分号)

上述两个文件连接时,就会被解析成如下

所以省略分号不仅需要当心当前文件的下一个标记,而且还需要当心脚本连接后可能出现在语句之后的任一标记。

为避免解析器解析错误,你可以在每个文件前缀一个额外的分号以保护脚本免受粗心连接的影响。如果文件最开始的语句以上述5个脆弱字符开关,你就应该添加额外的分号前缀。

JavaScript语法限制产生式

JavaScript语法限制产生式:不允许在两个字符之间出现换行。

举例说明:上述代码就被解析成了

自增自减运算的分号插入规则大家想想上述代码会被解析成什么样?说出谜底吧,因为自增运算符既可以作为前置运算符又可以作为后置运算符,但是后置运算符不能出现在换行之前,所以上述代码被解析成了

分号不会作为分隔符在for循环空语句的头部被自动插入像上述的代码就会出现解析错误。

空循环体的while同样也需要显示的分号,否则也会导致解析错误必须写成如下才不会报错哦

总结一下哦

1.仅在}标记之前、一行的结束和程序的结束处推导分号2.仅在紧接着的标记不能被解析的时候推导分号3.在以(、[、+、-、和/ 字符开头的语句前绝不能省略分号4.当脚本连接的时候,在脚本之间显式的插入分号5.在return、throw、break、continue、++或--的参数之前绝不能换行6.分号不能作为for循环的头部或空语句的分隔符而被推导出

JS实现的生成随机数的4个函数分享 第一种方法/**@desc:生成随机字符串*@remark:toString方法可以接收一个基数作为参数的原理,这个基数从2到封顶。如果不指定,默认基数是进制*/functiongen

javascript中call,apply,bind的用法对比分析 关于call,apply,bind这三个函数的用法,是学习javascript这门语言无法越过的知识点。下边我就来好好总结一下它们三者各自的用法,及常见的应用场景。首

js数组的操作指南 1、数组的创建vararrayObj=newArray();//创建一个数组vararrayObj=newArray([size]);//创建一个数组并指定长度,注意不是上限,是长度vararrayObj=newArray([element0[,element1[

标签: javascript 分号

本文链接地址:https://www.jiuchutong.com/biancheng/384754.html 转载请保留说明!

上一篇:Javascript核心读书有感之表达式和运算符(javascript的核心语言对象包括)

下一篇:JS实现的生成随机数的4个函数分享(js实现生成随机的圆)

  • 企业重组的特殊性税务处理比例
  • 怎么免费用别人的网
  • 公司名称变更期间可以投标吗
  • 企业给员工租的公寓楼都是什么样的
  • 增值税抵扣凭证装订要求
  • 发票查询发票代码有误
  • 小规模纳税人减半征收
  • 个人社保由单位承担的可以进福利费吗
  • 增值税专票逾期抵扣怎么操作
  • 会计凭证的保管期限为多少
  • 公司代收代付会被监控吗
  • 收到国外提供免费样品怎么入账?
  • 企业将活期存款转为定期时
  • 12月了还没找到工作怎么办
  • 公司对公租车保险的规定
  • 管家婆已过账销售单如何删除
  • 出差住宿费普票可以抵扣进项税吗为什么
  • 房地产收费依据与标准
  • 冲减多计提的费用
  • 代账会计的职责
  • 积分抵现金活动怎么做
  • u盘文件全都变成快捷方式怎么办
  • 忘记用户登录密码怎么办
  • 服务公司收到服务费发票怎么做账
  • 实收资本怎么用
  • 大型机械拆装
  • 暂估成本跨年怎么处理分录
  • 库乐队是苹果自带的嘛
  • Win11 Build 22471 Dev版更新推送(附更新修复已知问题汇总)
  • 电脑锁屏密码设置步骤
  • 转出未交增值税和未交增值税区别
  • chat function
  • 调整多计提企业利润
  • 三级菜单python
  • 自然保护什么意思
  • 工伤报销入账
  • 空调采购及安装税率
  • 员工报销垫付的钱怎么入账
  • 财税2016年12号文件解读
  • 认识数据库思维导图
  • 公司注册认缴的期限一般是多少
  • vgreduce --removemissing
  • 社保缴费基数3400
  • 库存品处理的方式
  • qt 5.15 编译
  • 水运企业会计核算办法
  • 固定资产盘盈属于其他业务收入吗
  • sqlserver 15247
  • sql2000日志清理
  • mysql数据库优化配置
  • 企业的预付账款属于金融资产吗
  • 资产负债表其他综合收益
  • 工业企业中制造费用包括哪些内容
  • 充值卡赠送金额属于什么性质
  • 外出经营必须办理外管证吗
  • 公司给员工转公司
  • 社保申报工伤怎么操作
  • 计提时的会计分录
  • 投资收益下期间怎么结转
  • mysql缩印
  • mysql 元组
  • 解决Windows Server远程断开后自动
  • 苹果mac双系统好不好
  • 苹果mac系统如何升级最新版本
  • 服务器双系统怎么安装
  • 日历显示不全
  • win10怎么看电池寿命
  • linux dhcpv6
  • win7使用临时配置文件登录
  • linux内核文件夹
  • 快速掌握押韵技巧
  • unity gui
  • python socket编程步骤
  • jquery拖拽流程布局
  • string和stringbuffer创建后都可以修改
  • 增值税开票系统如何添加开票人
  • 出口免税不退税主要适用于
  • 征管法第六十九条
  • 如何开具红字发票明细
  • 费减备案合格后怎么操作?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设