说说遇到的一道JS题

今天看到了一道js的题目,看到当时感觉太简单了,张嘴就给出了答案,事后看到答案,感觉自己太大意了  [惊哭]

题目是这样的:

  1. var a = {“key”:“1”“value”:“2”};
  2. var b = a;
  3. b.value += a.key;
  4. console.log(b.value);

看了一眼觉得结果应该是[code]3[/code],真是这样吗?其实不然, 结果为:

然后又想了一下  [笑眼] ,这特么是个字符串啊,字符串直接拼接的!

那么什么情况下结果是[code]3[/code]呢?这样的时候:

  1. var a = {key:1, value:2};
  2. var b = a;
  3. b.value += a.key;
  4. console.log(b.value);

输出结果为:

 

完。