Javascript 推入字符串不是函数

Javascript 推入字符串不是函数,javascript,node.js,yargs,Javascript,Node.js,Yargs,我有个简单的问题,把我搞糊涂了。我试图寻找其他类似问题的解决办法,但找不到这个确切的问题。我试图将一个字符串推送到一个空字符串中,我得到了一个错误,提示推不是一个函数 /Users/3x7r3m157/Development/Javascript/leaderboard.js:37 competitor.push(data[i]) ^ TypeError: competitor.push is not a function Super confused. 有什

我有个简单的问题,把我搞糊涂了。我试图寻找其他类似问题的解决办法,但找不到这个确切的问题。我试图将一个字符串推送到一个空字符串中,我得到了一个错误,提示推不是一个函数

/Users/3x7r3m157/Development/Javascript/leaderboard.js:37
  competitor.push(data[i])
             ^

TypeError: competitor.push is not a function Super confused. 
有什么想法吗?这是我的代码(我知道还有其他错误,但目前正在处理这个奇怪的推送错误):


常量args=require('yargs')。argv;
常数fs=要求('fs');
const util=require('util');
const leadboard=require(“./db.json”)
const addCompetitor=(名称)=>{
排行榜[名称]={分:[],次:[]}
console.log(排行榜)
返回排行榜
}
console.log(排行榜)
const addCompetitorTimes=(数据)=>{
设解析器=0;
var=“”;
让时间='';
让秒=“”;
让分钟=“”;
设timeInSeconds=0;
for(设i=0;i{
如果(错误)抛出错误;
var db=JSON.parse(排行榜);
//控制台日志(db)
});
competitor
是字符串,而不是数组

按如下方式初始化它,使其成为一个数组:

const competitor = [];

为什么您认为字符串有一个
.push()
方法?这个
.push()
方法应该对字符串做什么?
var competitor = '';
const competitor = [];