首页 > 其他 > 详细

用‘+=’拼接字符串,打印时总会出现一个undefined

时间:2017-04-05 19:15:49      阅读:92      评论:0      收藏:0      [点我收藏+]
var str;
for(var i = 0; i < 5; i++){
        str += String(i);
}    
console.log(str);

他喵的,打印的结果竟然是“undefined01234”,换着法的打印,总会出现undefined,无语。

后来仔细观察了下,恨不得抽自己两下,这么简单的问题都没看明白。

首先声明str时,并没有定义,它是没有值的。而‘str += String(i)’ 等价于 ‘str = str + String(i)’,拼出来的字符串第一个字符是初始声明的str,当然是undefined了。

第一行代码换成 var str = "";就可以了

用‘+=’拼接字符串,打印时总会出现一个undefined

原文:http://www.cnblogs.com/kakayang/p/6669999.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!