做个调查,大家写 js 写分号么 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Senevan

做个调查,大家写 js 写分号么

  •  
  •   Senevan Jun 13, 2016 12393 views
    This topic created in 3606 days ago, the information mentioned may be changed or developed.
    Twitter 上因为这个又吵起来了= =
    我先说,我一直写分号
    Supplement 1    Jun 13, 2016

    感觉还是写的人比较多,大体上写的原因主要有:

    • 怕出错
    • 写过C、java所以习惯加分号
    • 不写感觉一行没结束

    聊这个主要是我在看vue源码的时候发现它是不加分号的,比较好奇

    Supplement 2    Jun 13, 2016
    对了还有根据 liter 决定写不写= =
    110 replies    2016-06-14 13:13:20 +08:00
    1  2  
    hxtheone
        1
    hxtheone  
       Jun 13, 2016   1
    DoraJDJ
        2
    DoraJDJ  
       Jun 13, 2016 via Android   1
    之前写 Java 写习惯了,一直都写分号。
    如果没有分号很难判断这语句有完没完
    BOYPT
        3
    BOYPT  
       Jun 13, 2016
    写。然后看了不写派的说法好像很有道理,但是我已经忘了道理是啥……代码里面继续写
    techme
        4
    techme  
       Jun 13, 2016
    写习惯了,改不掉
    BGLL
        5
    BGLL  
       Jun 13, 2016
    C++ 写习惯了,所以 Javascript 也写分号
    然而 Javascript 写了段时间,再写 C++ 发现其实时不时在漏分号.....
    broadliyn
        6
    broadliyn  
       Jun 13, 2016
    var xxx=xxxxx; //写分号

    var fx = function(){

    } //不写

    $(xxx).on('click',function(){

    }); //写



    。。。。。 java 写惯了。。
    liqingcan
        7
    liqingcan  
       Jun 13, 2016
    liqingcan
        8
    liqingcan  
       Jun 13, 2016
    不写总感觉少了点什么
    visonnn
        9
    visonnn  
       Jun 13, 2016
    写啊

    主要是给自己看的
    Mutoo
        10
    Mutoo  
       Jun 13, 2016
    写了一年 lua 之后,再写 Javascript 就经常忘记写分号。
    qqqppp9998
        11
    qqqppp9998  
       Jun 13, 2016 via iPhone
    不写
    johnhsm2333
        12
    johnhsm2333  
       Jun 13, 2016 via Android
    不写了
    ceoimon
        13
    ceoimon  
       Jun 13, 2016
    写与不写随意切换, Linter + formatter
    itlr
        14
    itlr  
       Jun 13, 2016
    配好了 linting 自己就不需要特别关注了,习惯上是写的,忘记了 linting 工具能发现就可以。
    milklee
        15
    milklee  
       Jun 13, 2016
    不写了
    Wangxf
        16
    Wangxf  
       Jun 13, 2016
    写,不写感觉少了点啥,而且压缩 js 的时候避免出错
    ChiangDi
        17
    ChiangDi  
       Jun 13, 2016 via Android
    本来是写得,后来经过仔细思考和实际体验之后决定不写了。
    yeyeye
        18
    yeyeye  
       Jun 13, 2016
    Tampermonkey 会有警告 如果不写
    YUX
        19
    YUX  
    PRO
       Jun 13, 2016
    Linter 让写就写
    df4VW
        20
    df4VW  
       Jun 13, 2016
    不写,然后 asi
    ericls
        21
    ericls  
       Jun 13, 2016 via iPhone
    不写
    shisaq
        22
    shisaq  
       Jun 13, 2016
    [jshint]( http://jshint.com/) 让写就写
    bumz
        23
    bumz  
       Jun 13, 2016
    凡是可以写分号的地方,都会写

    比如

    var a = function() {

    };

    do {

    } while (true);

    这样的好处是不必耗费脑力纠结语句有没有结束(人工在大脑中执行一次自动分号插入的机制有点烧)

    以及那个自动分号插入的机制有点坑,比如

    (function() {console.log('a')})()
    (function() {console.log('a')})()

    就会报错

    (function() {console.log('a')})();
    (function() {console.log('a')})();

    则不会。

    因此任何时候都写分号好处巨大,省略分号流毒深远啊
    bitkwan
        24
    bitkwan  
       Jun 13, 2016 via Android
    写啊… 写 php 习惯了… var 定义变量时都顺手加上 $了…然后又去了
    zcbenz
        25
    zcbenz  
       Jun 13, 2016
    写了好几年带分号的,转 Standard JS 以后就不带了。
    wwqgtxx
        26
    wwqgtxx  
       Jun 13, 2016 via Android
    写,主要是用 idea 写的,不写分号编辑器回提示的
    flydogs
        27
    flydogs  
       Jun 13, 2016
    不写总觉得别扭
    taijia
        28
    taijia  
       Jun 13, 2016 via Android
    写,不然压缩后会出现莫名其妙的错
    qqmishi
        29
    qqmishi  
       Jun 13, 2016 via Android
    写,不写等默认加的话有坑
    textworld
        30
    textworld  
       Jun 13, 2016
    不写的话,代码压缩的时候不是会出错么
    aivier
        31
    aivier  
       Jun 13, 2016
    不写的不是异教徒么?
    rekulas
        32
    rekulas  
       Jun 13, 2016   1
    除非是想极限压缩,否则都应该补完的,不写也能正常执行是 js 引擎的编译纠正机制

    现在很多大牛貌似推荐不写分号的风格,但我觉得在这之前首先得解决部分结构不写分号会异常的问题吧
    sheep3
        33
    sheep3  
       Jun 13, 2016 via Android
    写,习惯写 Java
    clino
        34
    clino  
       Jun 13, 2016
    不写 不明白为什么要写
    moe3000
        35
    moe3000  
       Jun 13, 2016
    既然是 Javascript 就按照 java 的习惯来呗 doge
    metrue
        36
    metrue  
       Jun 13, 2016
    自己是不写,可是公司的 eslint 统一配置,必须写。
    123s
        37
    123s  
       Jun 13, 2016
    以前不写,后来写。不写有时候会有问题
    tobeyouth
        38
    tobeyouth  
       Jun 13, 2016
    不写
    Rsl
        39
    Rsl  
       Jun 13, 2016
    开始 ES2015 后就不写了. 看起来感觉舒服了不少.
    cloverstd
        40
    cloverstd  
       Jun 13, 2016
    @Rsl 我也是,用 ES6 之后就不写分号了
    ayiis
        41
    ayiis  
       Jun 13, 2016
    代码不是一个人写的,为了兼顾水平不一致的队友以及后来的维护者,写分号
    而又因为有几种情况是必须写分号的,所以统一在所有情况下,写分号
    Haku
        42
    Haku  
       Jun 13, 2016
    不写,虽然很不爽不写,但我就是不写= =
    learnshare
        43
    learnshare  
       Jun 13, 2016
    代码是给人看的,写。机器执行不管这些东西
    wbt
        44
    wbt  
       Jun 13, 2016
    写。
    BruceYuan
        45
    BruceYuan  
       Jun 13, 2016
    正常都写吧,哪怕是 python 入门也会写吧
    lixiaohan
        46
    lixiaohan  
       Jun 13, 2016
    不写的话 有时候会犯一些很低级的错误,而且查错误的时候需要查半天, 到时候你就该骂自己蠢了,然后你就记住了, 以后就知道写了
    ljcarsenal
        47
    ljcarsenal  
       Jun 13, 2016
    不写 webpack 自动生成。。。。
    当然 不用 webpack 的话还是写吧 低版本浏览器某些情况下会报错
    M4ster
        48
    M4ster  
       Jun 13, 2016
    难道没人用 CoffeeScript ?
    cin
        49
    cin  
       Jun 13, 2016
    不写, 没分号的代码看着舒服.
    raistlin916
        50
    raistlin916  
       Jun 13, 2016
    写 react 的时候不写,其实还好
    smallpath
        51
    smallpath  
       Jun 13, 2016
    单人项目写, lint 工具的话要我怎么办我就怎么办
    xcatliu
        52
    xcatliu  
       Jun 13, 2016
    thinkmore
        53
    thinkmore  
       Jun 13, 2016
    按照 java 的标准来写 js 写习惯了
    unknownservice
        54
    unknownservice  
       Jun 13, 2016
    被坑一次之后现在强迫症必须要写...
    exoticknight
        55
    exoticknight  
       Jun 13, 2016
    跟团队,跟项目,尽量写
    之前一直写,最近的 vue 项目因为官方脚手架没写于是跟着不写
    Arrowing
        56
    Arrowing  
       Jun 13, 2016
    写,看别人不写很别扭。
    fds
        57
    fds  
       Jun 13, 2016
    tslint 设置成 "semicolon": [true, "never"], 然后就再也不写分号了。
    之前用 coffeescript 也不写。
    pppanda
        58
    pppanda  
       Jun 13, 2016
    以前写,现在不写了
    solodxg
        59
    solodxg  
       Jun 13, 2016
    以前写的 后来 http://standardjs.com/ 不写了
    b821025551b
        60
    b821025551b  
       Jun 13, 2016
    不写分号的是不是也不压缩呢
    yurivvvvv
        61
    yurivvvvv  
       Jun 13, 2016
    hkongm
        62
    hkongm  
       Jun 13, 2016
    浏览器写
    node 不写了
    lk920724
        63
    lk920724  
       Jun 13, 2016
    panlilu
        64
    panlilu  
       Jun 13, 2016
    airbnb 规范,写分号
    Strikeactor
        65
    Strikeactor  
       Jun 13, 2016
    zhenjiachen
        66
    zhenjiachen  
       Jun 13, 2016
    写,不过有时候会忘记。
    rupert
        67
    rupert  
       Jun 13, 2016 via iPhone
    好像说写分号的都没什么充分理由, 怕压缩出问题? 合格的压缩工具肯定会处理好分号问题的吧。 我只在( [ 前加分号,基本就碰到没什么问题了
    SuperMild
        68
    SuperMild  
       Jun 13, 2016
    这才知道 Standard JS ,貌似不错啊, No configuration ,不用烦了。
    nullizer
        69
    nullizer  
       Jun 13, 2016
    plqws
        70
    plqws  
       Jun 13, 2016
    airbnb 规范,所以写
    SuperMild
        71
    SuperMild  
       Jun 13, 2016
    Can you make rule X configurable?

    No. The point of _standard_ is to save you time by picking reasonable rules so you can spend your time solving actual problems. If you really do want to configure hundreds of _eslint_ rules individually, you can always use _eslint_ directly.
    xman99
        72
    xman99  
       Jun 13, 2016
    初学的时候 老师说可以不用写的, 我觉得还是写的格式好
    VmuTargh
        73
    VmuTargh  
       Jun 13, 2016
    写,不知道为什么每次调试总是提示没有分号不能用。

    @Mutoo 窝写 lua 也一直加分号,强迫症
    an168bang521
        74
    an168bang521  
       Jun 13, 2016
    写;
    如果不写的话,会有这条代码没写完的感觉;
    kiwi95
        75
    kiwi95  
       Jun 13, 2016
    写 Go 的时候不写,写 PHP 的时候写。。
    yhxx
        76
    yhxx  
       Jun 13, 2016   1
    一直都是写几个字母然后 TAB ,编辑器帮我补了分号就有,不补就没有
    (我这样的是不是要被分号党和不加分号党一起吊打
    saberlily
        77
    saberlily  
       Jun 13, 2016
    写啊
    Vonex
        78
    Vonex  
       Jun 13, 2016
    写,善始善终。
    yujieyu7
        79
    yujieyu7  
       Jun 13, 2016
    以前写,试过不写之后就回不去了,太爽了
    tairan2006
        80
    tairan2006  
       Jun 13, 2016
    js 写啊…因为看起来很 C
    think2011
        81
    think2011  
       Jun 13, 2016
    不再写了,因为看起来简洁,顺便提一下,如果不写问号,一定要注意在自运行函数前要加分号,不然要出错的。

    ```js
    let a = 1; // 不加分号要死

    (() => {
    console.log(a)
    })()
    ```
    cxbig
        82
    cxbig  
       Jun 13, 2016 via iPhone
    IDE 自动补全,无所谓写不写。
    sxm
        83
    sxm  
       Jun 13, 2016
    习惯写,我有强迫症
    wmhx
        84
    wmhx  
       Jun 13, 2016
    以前写 js 很随便, 有时写有时不写,好像也无所谓, 最近做一个项目用 java 解释执行 js 片段, 不加分号各种错误,而且提示各种脑残,尤其是 var a=function(){} 这样的没有分号 java 解析提示都是什么鬼啊, 后来,后来, 后不来我就不干这个项目了.
    tanteng
        85
    tanteng  
       Jun 13, 2016
    不写 IDE 老会提示,所以还是写
    fetich
        86
    fetich  
       Jun 13, 2016
    公司项目看规定,个人练手看心情。
    ug888168
        87
    ug888168  
       Jun 13, 2016 via Android
    习惯了写
    inet6
        88
    inet6  
       Jun 13, 2016
    我习惯了写分号
    solome
        89
    solome  
       Jun 13, 2016
    es6 风格的,不写~
    jason19659
        90
    jason19659  
       Jun 13, 2016
    想起来就写。。忘了就。。反正也能跑起来。对吧
    EchoWhale
        91
    EchoWhale  
       Jun 13, 2016 via Android
    不写,有 asi
    shyling
        92
    shyling  
       Jun 13, 2016
    @BruceYuan 是不是还要写:
    lslqtz
        93
    lslqtz  
       Jun 13, 2016
    @yhxx 打死打死 2333
    muyege
        94
    muyege  
       Jun 13, 2016
    擦!写就写,不写就不写,骗分党!
    zyue
        95
    zyue  
       Jun 13, 2016
    不写就难受斯基
    Wenwei
        96
    Wenwei  
       Jun 13, 2016
    ES6 写着写着就不写分号了。

    已经习惯不写分号了。
    marshalYuan
        97
    marshalYuan  
       Jun 13, 2016
    逗号哪里做的不好么,你们干嘛还要去找分号
    motai
        98
    motai  
       Jun 13, 2016
    记得就写,忘了就算了
    xifangczy
        99
    xifangczy  
       Jun 13, 2016
    不写难受...
    SourceMan
        100
    SourceMan  
       Jun 13, 2016 via iPhone
    楼上好多一看就是项目没有上 eslint
    我写多年的分号,转 ES6 之后建议不写,改了规则,不到 2 个星期,就被纠正过来了
    1  2  
    About     Help     Advertise     Blog     API     FAQ     Solana     1190 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 302ms UTC 18:03 PVG 02:03 LAX 11:03 JFK 14:03
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86