var location = window.location引发的坑

  之前项目修改了一个东西,就是将之前的login_url由指定的字符串改成了动态的ip,在使用了location去保存window.location之后,使得网页每次加载时都一直疯狂地请求资源,感觉是陷入了循环。这个bug我找了几个小时都没找到。当时是有发现当login_url后面加一些会报错的符号时,页面能正常加载,所以就把错误定位在了url上,可是后面一直把错误定位在后端对请求的转发造成没成功请求到资源的问题,现在仔细想,当时定位bug的思路是有很大问题的。

  首先,我应该意识到有代码造成了循环——因为查看了网络资源确实不断地在加载。其次,我应该意识到login_url的拼写错误或者是资源定位错误都不可能会有不断加载资源的问题。所以之后想问题纯粹点,别想那些让人感觉困惑的点。如果一开始就想到循环的问题,或许能早点解决问题。

  最后的还需要学习的就是不要用关键字作为变量名——js关键字包括,这次var location其实指代的就是window.location,如果我有在控制台进行尝试,应该是可以非常快速的发现问题的,尽管这个代码不会报错,但是在控制台造成的问题确可以让我很快地意识到问题在哪里。

  附上一个有保留关键字的链接