面试错题集

 题1:

console.log('A' - 'B');  //输出:NaN

 题2:考察的还是闭包,输出的是:3,3 

for(var i=1; i<3; i++){
  setTimeout(function() {
      console.log(i);            
  },0);  
}

 题3:304

1、首先,304代表的是not modified,未修改

2、为什么会出现304?

  因为ajax请求的时候如果使用的是get请求,且路径参数相同,那么ajax会先从本地缓存中取,如果取到了它是不会去请求后台的

3、如何解决?

  ① 根据原因可知,只要保证每次请求的路径参数不同就可以了;

  ② 使用【时间戳】,var url = 'php/01abc.php?&_t='+new Date().getTime(); //本来我们要访问的是php/01abc.php,但是这会出现304,加上时间戳就解决了;

  ③ 使用【随机数】,var url = 'php/01abc.php?_sj='+Math.Random(); //Math.Random()会产生一个随机数

 

posted @ 2017-08-18 14:59  carrie_zhao  阅读(155)  评论(0)    收藏  举报