推荐关注
› Meteor
› JSLint - a JavaScript code quality tool
› jsFiddle
› D3.js
› WebStorm
推荐书目
› JavaScript 权威指南第 5 版
› Closure: The Definitive Guide
des

javascript 的括号太多之后看不清层次

  •  
  •   des · May 30, 2015 via Android · 8542 views
    This topic created in 4176 days ago, the information mentioned may be changed or developed.

    层次太多之后分不清哪个是哪个
    特别是在参数中直接传一个匿名函数,然后直接调用这个函数,里面又有其他逻辑,东西多了就有点分不清了
    各位都是怎么看的,有技巧吗?
    j

    48 replies  •  2015-06-01 15:23:19 +08:00
    oott123
    oott123
    May 30, 2015
    1
    coffeescript……

    如果只是看的话 换个好的 IDE 都有括号提示的
    hahasong
    hahasong
    May 30, 2015
    2
    弃之,改写 python就没这个烦恼了
    des
    des
    OP
    May 30, 2015 via Android
    3
    @oott123 IDE是有提示,但是某些情况还是看着晕
    funagi
    funagi
    May 30, 2015
    4
    1. 换个好的IDE,如Webstorm;
    2. 用CoffeeScript辅助编写;
    3. 养成良好的习惯,避免过度嵌套,该隔开的隔开,该注释的注释。
    clino
    clino
    May 30, 2015 via Android
    5
    缩进搞好点会不会比较好些
    des
    des
    OP
    May 30, 2015 via Android
    6
    @funagi 小的js用webstom太慢,我用notepad++也不差啊,
    别人的代码你也不能强求吧,另外还有压缩过的,即使合适化了,有些也看着眼花
    funagi
    funagi
    May 30, 2015
    7
    @des notepad++是不差,但顶多是瑞士军刀,比不上Webstorm这专业大杀器,太慢的话建议升级电脑,别亏待自己,当然没钱升级是另外一回事。
    既然是别人的代码,只能自己硬啃,多加点注释把代码段隔开,这种真的没多少技巧。
    aisk
    aisk
    May 30, 2015
    8
    用 Promise 避免嵌套。
    oisc
    oisc
    May 30, 2015
    9
    用两个空格缩进是趋势。。。。。逃)
    des
    des
    OP
    May 30, 2015 via Android❤️1
    10
    @aisk 这个好

    @oisc 你的括号打反了 (逃
    des
    des
    OP
    May 30, 2015 via Android
    11
    @oisc 到底是两个空格还是一个tab,另外空格也分全角和半角,反正都看不清… 感觉也是个坑
    oisc
    oisc
    May 30, 2015
    12
    @des 空格党表示必须空格啊 ,写js还是应该想方法比如用then.js避免深层嵌套吧
    sudoz
    sudoz
    May 30, 2015
    13
    代码风格很重要
    shiny
    shiny
    PRO
    May 30, 2015
    14
    async.js、promise
    tux
    tux
    May 30, 2015
    15
    {
    {
    {
    ;
    }
    }
    }
    zzetao
    zzetao
    May 30, 2015❤️1
    16
    function a(){
    var b = {

    }//b end
    }//a end
    yyy
    yyy
    May 30, 2015
    17
    推荐promise
    yimity
    yimity
    May 30, 2015 via Android
    18
    这么多嵌套说明要重构成小函数了。
    imskull
    imskull
    May 30, 2015
    19
    同建议promise,这个必须先完全熟练掌握,后面觉得多得话只能学会IDE高亮,超过一页就只能前后括号来回跳转着看了。
    scarlex
    scarlex
    May 30, 2015
    20
    重构成多个小函数+1
    ikaros
    ikaros
    May 30, 2015
    21
    同,即使有IDE或者编辑器提示是关闭哪个括号的,但是不能同时显示所有括号吧
    muzuiget
    muzuiget
    May 30, 2015
    22
    这不就是回调地狱嘛,从代码格式(例如缩进,高亮对齐)下手都是治标,重构优化逻辑结构治本。

    有人还特意注册了一个网站,就还一篇文章 http://callbackhell.com/
    asj
    asj
    May 30, 2015 via iPad
    23
    学lisp
    notcome
    notcome
    May 30, 2015 via iPhone
    24
    用 PureScript 吧
    Ironsongming
    Ironsongming
    May 30, 2015 via iPhone
    25
    赶紧写python去
    magicdawn
    magicdawn
    May 30, 2015
    26
    lisp系笑而不语
    Gonster
    Gonster
    May 30, 2015
    27
    @asj 学完lz要变成括号僵尸了^o^
    des
    des
    OP
    May 30, 2015 via Android
    28
    @Gonster 想起特工偷代码的那个笑话了
    Gonster
    Gonster
    May 30, 2015
    29
    @des 噗噗噗
    Axurez
    Axurez
    May 30, 2015
    30
    ES6
    liran319
    liran319
    May 30, 2015
    31
    @hahasong 论python缩进的好处XD
    gaotongfei
    gaotongfei
    May 30, 2015
    32
    我也来说句, lisp大法好
    wolfan
    wolfan
    May 30, 2015
    33
    听到python时我尽无言以对。
    karloku
    karloku
    May 30, 2015
    34
    po主可以看我头像开心开心....
    zwy100e72
    zwy100e72
    May 30, 2015
    35
    @liran319 缩进一删,代码就废
    论python的保密性(
    flashback313
    flashback313
    May 30, 2015
    36
    Brackets 的括号高亮不错,喜欢 sublime 的话可以装一个 Brackets 的插件。
    luoway
    luoway
    May 31, 2015 via Android
    37
    @hahasong
    @Ironsongming
    @liran319
    @zwy100e72

    学python 2还是3
    论python的版本兼容
    liran319
    liran319
    May 31, 2015
    38
    @luoway 目前2的库还是丰富一些吧
    liran319
    liran319
    May 31, 2015
    39
    @zwy100e72 保密完了要手动恢复也是基本无解啊
    jsq2627
    jsq2627
    PRO
    May 31, 2015
    40
    $(document).ready( function(){
    $("button").click( function(){
    $.get("demo_test.asp", function(data, status){
    alert("Data: " + data + "\nStatus: " + status); }); });
    jsq2627
    jsq2627
    PRO
    May 31, 2015❤️1
    41
    其实我要打的是这个样子的。
    easynoder
    easynoder
    May 31, 2015
    42
    keep your code shallow
    skinqis
    skinqis
    May 31, 2015
    43
    选个顺手的IDE, 写的时候注意换行和缩进, 层次还是很清晰的.
    上webstorm吧...个人感觉非常好用...各种高亮也是很符合习惯的
    tuoxie007
    tuoxie007
    May 31, 2015
    44
    @jsq2627 你这样何苦呢,coffeescript很适合你
    joyee
    joyee
    May 31, 2015
    45
    如果是callback hell造成的嵌套太多,CoffeeScript也没什么用的,不过就是从很多括号变成了很多缩进而已,如果你还是用2空格缩进,一样看得很痛苦……别人写的代码只能忍了,自己可控的代码可以用async/await/generator/promise/CPS逃离callback hell
    hxtheone
    hxtheone
    Jun 1, 2015
    46
    @des 会有人在代码里用全角字符吗?
    des
    des
    OP
    Jun 1, 2015
    47
    @hxtheone 比如有打中文的时候啊,一不小心忘了切回来……
    hxtheone
    hxtheone
    Jun 1, 2015
    48
    @des 这也算。。一般遇到全角字符编译器/解释器就直接报错了吧?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   5276 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 98ms · UTC 00:19 · PVG 08:19 · LAX 16:19 · JFK 19:19
    ♥ Do have faith in what you're doing.