Others

Posted by Felix Blog on November 25, 2018

如何debugger ?#

单行debugger

步径debugger

函数步径执行按钮(就是执行下一步js代码的意思)

总结:

断点与 js代码修改

看下面这张图,我在一个名为toggleTab的方法下打了两个断点,当开始执行我们的点击切换tab行为后,代码会在执行的断点出停下来,并把相关的数据展示一部分,此时可以在已经执行过得代码处,把鼠标放上去,即可查看相关的具体数据信息,同时我们可以使用右侧的功能键进行调试,右侧最上面一排分别是:暂停/继续、单步执行(F10快捷键)、单步跳入此执行块(F11快捷键)、单步跳出此执行块、禁用/启用所有断点。下面是各种具体的功能区:

只出现一次的数字 (按位异或)##

给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素

**按位异或(XOR) ^ **

    Array.prototype.singleNumber = function(){
      let number = 0;
      for(let i = 0; i < this.length; i++){
        number ^= this[i]
      }
      return number
    }

异或运算符, ^ 如果对应两个操作位有且仅有一个1时结果为1,其他都是0。

    // 1的二进制表示为: 00000000 00000000 00000000 00000001
    // 3的二进制表示为: 00000000 00000000 00000000 00000011
    // -----------------------------
    // 2的二进制表示为: 00000000 00000000 00000000 00000010
    console.log(1 ^ 3)     // 2