为了账号安全,请及时绑定邮箱和手机立即绑定

js变量使用前要先定义类型吗?

js变量使用前要先定义类型吗?

吃鸡游戏 2018-08-23 17:08:27
题目描述Your task is to drive your car from 1 to 60 Kilometers per hour by printing a pattern.A hyphen represents the speed of cars.one hyphen is counted as 1 kph.简单来讲就是依次输出1到60个连字号。题目来源及自己的思路(题目来源于此)[https://edabit.com/challenge/...]。相关代码function Go(num) {    var result = "";    for(var i=0; i<num; ++i){         result+="-";     }    return result; }你期待的结果是什么?实际看到的错误信息又是什么?num是从1到60依次测试的。所以实际上应该看到1到60个“-”依次输出。如“-”,“--”,“---”。以上代码是正确的,但我尝试着把var result = "";改成var result;结果就会报错。这是为什么呢?一定要先定义result为字符串吗?
查看完整描述

2 回答

?
Smart猫小萌

TA贡献1911条经验 获得超7个赞

你在考虑字符拼接的时候忘记了result+="-"实际上是result=result+"-"

当result没有数据的时候,result与一个字符相加,result是一个"undefined",在这次加完之后,result就变成了"undefined-",然后会继续加。后面就都是正常的了。

这个问题出在一个没有赋值的变量参与字符串拼接


查看完整回答
反对 回复 2018-08-26
?
蛊毒传说

TA贡献1895条经验 获得超3个赞

var result = "";声明了是一个字符串类型,var result; 只声明没有定义类型。+=一般用在number或string类型上

查看完整回答
反对 回复 2018-08-26
  • 2 回答
  • 0 关注
  • 1228 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信