修复的一些小bug

1. 对象通过引用来传递,他们永远不会被复制, 如下:

1 var a = {};
2 var b = {};
3 a ==b;//false

  字符串就不是了:

  var a = "";var b = "";a== b;//true

2.我们知道,数组,Boolean值都是引用对象,在复制的时候,两个变量都指向同一指针;string类型不是。var a = "ass";var b =a; a==b;//true

1 var a = [1,2,3];
2 var b = a;
3 a.push(4);//返回数组长度
4 console.log(a);//[1,2,3,4]
5 console.log(b);//[1,2,3,4]

  那么我们不要得到这样的结果呢?

1 var a = [1,2,3],b=[],_len;
2 for(var i=0;i<_len;i++){
3     b.push(a[i]);
4 }
5 b;//[1,2,3]
6 a.push(44);
7 a;//[1,2,3,44]
8 b;//[1,2,3]

   还有1种方法:slice:

1 var a = [1,2,3,4];
2 var b = a.slice(0,a.length);
3 a.push(99);
4 a;//[1,2,3,4,99]
5 b;//[1,2,3,4]

 

3.对url进行截取 &gid=abcd,多种情况

var $url = "http://www.pptv.com?sid=9&gid=dcj&sed=kl";
var a = $url.split("?")[1];
var b = a.split("gid=")[1];
var c = b.split("&")[0];// "dcj"

 

4. indexOf() 必须是对字符串进行查找, 在IE8、7下面报错,原来是a.indexOf("k");这个a 是对象,不是字符串

3. .html() 有可能会有空格 ,要清除空格

  var game_list = {...}; 

  for(var prop in game_list){

    game_list[target];

  }

  这个game_list console.log(game_list);//得到了正确的值

  console.log(target);//也得到了正确值

  但是, console.log(game_list[target]);//undefined;

  这个target ,是 $(this.html()) 得来的。打印这个target == "ABCD"; // ABCD ,ABCD false; 竟是多了空格

posted @ 2013-07-27 19:42  楚玉  阅读(182)  评论(0编辑  收藏  举报