变量定义为字符串
Posted
技术标签:
【中文标题】变量定义为字符串【英文标题】:Variable Defining As String 【发布时间】:2019-01-05 09:42:43 【问题描述】:var allMatches:Number = soloStats[0] + duoStats[0] + squadStats[0]
当我尝试将此变量设为数字时,allMatches 是一个数字,但其中的值连接为字符串(例如 1、2 和 3 连接为 123 而不是 6)。
所有的统计值都是数字,并且在其他时候成功地用作数字,但是在这个变量中它们就像字符串一样。
【问题讨论】:
嗯,你确定 stat 数组真的有数值吗?使用trace(getQualifiedClassName(soloStats[0]));
进行检查。快速解决方法是转换如下值:var allMatches:Number = Number(soloStats[0]) + Number(duoStats[0]) + Number(squadStats[0]);
【参考方案1】:
这是因为您将数字作为字符串存储在数组中。
您可以使用parseInt
从字符串中获取数字
const allMatches = parseInt(soloStats[0]) + parseInt(duoStats[0]) +
parseInt(squadStats[0])
【讨论】:
如果可能,您应该尝试将它们存储为整数或数字。由于这些是用于记分的分数,我假设它们是整数或数字,但是当您将它们推入数组时,您以某种方式将它们变成了字符串 amirite?以上是关于变量定义为字符串的主要内容,如果未能解决你的问题,请参考以下文章