geew
V2EX  ›  问与答

话说 JS 有哪些已知坑呢? 求各位大神透露给我这个前端小白

  •  
  •   geew · Sep 25, 2014 · 4822 views
    This topic created in 4275 days ago, the information mentioned may be changed or developed.
    今天发现了网站的一个恶心的js的bug,几个同事一起调试才找到了可能的原因。
    $(obj).off('keyup').on('keyup', function(event) 加了个off就好。。。

    感慨 js好多坑,求指教
    23 replies    2014-09-26 09:53:53 +08:00
    lifecoder
        1
    lifecoder  
       Sep 25, 2014
    啥意思?
    之前绑定了keyup事件,你没去找在哪绑定,是干什么的,就直接给解绑了?
    如果有事件冲突应该往阻止冒泡或捕获的方向去思考吧,不是这么玩儿的。。。
    geew
        2
    geew  
    OP
       Sep 25, 2014
    @lifecoder 哦 这个就是在这里绑定的 bug产生的原因是没有解绑之前的事件
    binux
        3
    binux  
       Sep 25, 2014   ❤️ 1
    下次的 bug 就是发现一个 obj 怎么绑事件都不生效。
    geew
        4
    geew  
    OP
       Sep 25, 2014
    @binux 汗 会吗?

    话说来讨论js的坑吧
    abelyao
        5
    abelyao  
       Sep 25, 2014
    @geew 这是 js 的坑呢,还是 jquery 的坑呢……
    caiych
        6
    caiych  
       Sep 25, 2014
    =。=入门的时候被callback里的this坑的够呛…其实注意一下也还好…
    RoshanWu
        7
    RoshanWu  
       Sep 25, 2014   ❤️ 1
    我觉得用“坑”这个字眼挺好,为何我的文章被转载后,“坑”就变成了“陷阱”,附上原文地址:
    http://roshanca.com/2012/traps-in-javascript-part-I/

    两年前写的 part I,说好的 to be continue,一直抽不出身来完成,哎。希望这里能收集一些素材,关注下大家提供的“坑”。
    zythum
        8
    zythum  
       Sep 25, 2014   ❤️ 1
    这是你代码逻辑的坑。自己挖的 好吧。
    zythum
        9
    zythum  
       Sep 25, 2014
    估计是你之前绑定了一个事件。然后这个事件的代码报错了。阻止了这个后绑定的事件的执行。然后你把前一个事件移除了就可以了。
    mywaiting
        10
    mywaiting  
       Sep 25, 2014   ❤️ 1
    冒着被block的危险说一句:

    说JS有坑的,基本都是不理解JS背后的机制的。好好学习就是了~

    给LZ推荐个好文 http://bonsaiden.github.io/JavaScript-Garden/zh/

    不谢~
    jsonline
        11
    jsonline  
       Sep 25, 2014   ❤️ 1
    去看 JavaScript 神秘花园 和 WtfJS

    根本不是坑,而是 feature。

    我觉得最坑的是浏览器的API。
    比如 isNaN() 和 document.all
    jakwings
        12
    jakwings  
       Sep 25, 2014
    使用 API 前先看个表: http://kangax.github.io/compat-table/es5/
    geew
        13
    geew  
    OP
       Sep 25, 2014
    嗯 主要是自己不熟悉 基础不好 谢谢诸位了
    cougar
        14
    cougar  
       Sep 25, 2014
    这不算是坑,而且貌似是JQuery
    chemzqm
        15
    chemzqm  
       Sep 25, 2014
    推荐先看 http://book.douban.com/subject/2994925/
    js常见坑比如可有可无的分号,没有块状作用域(es6开始有),花样作死的callback写法
    gouflv
        16
    gouflv  
       Sep 25, 2014
    对新手来说 哪里都是坑
    wadezhao
        17
    wadezhao  
       Sep 25, 2014
    仅就楼主举的这个例子来说,最多是jquery的坑,不能算javascript的坑…………
    zzNucker
        18
    zzNucker  
       Sep 25, 2014
    坑太特么多了。
    otakustay
        19
    otakustay  
       Sep 25, 2014
    咦JS还有不坑的地儿?
    geew
        20
    geew  
    OP
       Sep 25, 2014
    这里就是要求透露坑的啊 来来来
    seki
        21
    seki  
       Sep 25, 2014
    我觉得 javascript the good parts 讲得挺好
    sdysj
        22
    sdysj  
       Sep 25, 2014
    海了去。。。
    geew
        23
    geew  
    OP
       Sep 26, 2014
    都说有坑。。。。哪些呢?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3244 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 59ms · UTC 12:25 · PVG 20:25 · LAX 05:25 · JFK 08:25
    ♥ Do have faith in what you're doing.