js语法(1)_css语法

js语法(1)_css语法js自动插入分号规则a.什么时候需要写分号什么时候不能写分号要有换行符,且下一个符号是不符合语法的,那么就尝试插入分号。有换行符,且语法中规定此处不能有换行符,那么就自动插入分号。源代码结束处,不能形成完整的脚本或者模块结构,那么就自动插入分号。noLineTerminatorhere规则表示它所在的结构中的这一位置不能插入换行符。带有标签的continue语句不能在continue后插入换行带标签的break语句不能在break后插入换行return后不能插入换行..


Jetbrains全系列IDE稳定放心使用

  1. 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 后加上 ' ; '
    
  2. 不写分号需要注意的情况
    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,确保不会向服务器发出垃圾请求。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/179528.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • matlab循环语句for_MATLAB以下选择语句错误的是

    matlab循环语句for_MATLAB以下选择语句错误的是for循环第一种格式第二种格式

    2022年10月7日
  • C#FindWindowEx参数详解

    C#FindWindowEx参数详解FindWindowEx参数详解本函数的其他内容在网络上都比较多,这里主要说一下它的参数设置和搜索结果的区别。函数功能:在窗口列表中寻找与指定条件相符的第一个子窗口。该函数获得一个窗口的句柄,该窗口的类名和窗口名与给定的字符串相匹配。这个函数查找子窗口,从排在给定的子窗口后面的下一个子窗口开始。在查找时不区分大小写。函数原型:HWNDFindWindowEx(HWNDh

    2022年6月1日
  • 感谢 Gridea,让我有动力写作

    感谢 Gridea,让我有动力写作1.真的要感谢Gridea,让我对写作产生热忱。一直有在各大博客平台输出的习惯,但是都没有持续更新。有的平台广告太多,写不下去。有的平台排版复杂,写文章1个小时,排版要2个小时。所以后面换成了静态

    2022年8月3日
  • 算法:记忆化搜索「建议收藏」

    算法:记忆化搜索「建议收藏」概述记忆化搜索是一种典型的空间换时间的思想。记忆化搜索的典型应用场景是可能经过不同路径转移到相同状态的dfs问题。更明确地说,当我们需要在有层次结构的图(不是树,即当前层的不同节点可能转移到下一层的相同节点)中自上而下地进行dfs搜索时,大概率我们都可以通过记忆化搜索的技巧降低时间复杂度。例子:青蛙过河题目描述一只青蛙想要过河。假定河流被等分为若干个单元格,并且在每一个单元格内都有可能放有一块石子(也有可能没有)。青蛙可以跳上石子,但是不可以跳入水中。给你石子的位置列表stones(用单

    2022年7月26日
  • rtsp 获取视频流 java_浏览器无插件播放rtsp视频流 java后台 + js + html

    rtsp 获取视频流 java_浏览器无插件播放rtsp视频流 java后台 + js + html前言:现在安防设备普遍使用rtsp拉取视频流,要在网页播放rtsp视频流不可以直接实现,html不支持rtsp视频流,所以需要进行转换成html5可以解析的帧数据然后在浏览器进行播放。传输数据流的长连接,网上很多都是node.js开发的http转websocket,借鉴采用java+netty进行了这一步的转换。这个地方一定要搞清楚http和WS的区别,为啥要转WS。本文的核心就是http…

    2022年10月10日
  • jmespath(1)基础语法

    jmespath(1)基础语法前言JMESPath是JSON的查询语言。您可以从JSON文档中提取和转换元素官方文档:https://jmespath.org/tutorial.html基本表达式JMESPath用的最多的

    2022年7月28日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号