Javascript 将我的函数添加到另一个函数中?

Javascript 将我的函数添加到另一个函数中?,javascript,Javascript,我已经在代码中添加了第一个函数superscriptDesignation,现在想在teamDesignations中的项上调用它。做 return superscriptDesignation(teamDesignations); 控制台中出现错误,未定义.replace。如何将我的函数superscriptDesignation添加到团队名称中 JS var superscriptDesignation=功能(名称){ 返回名称。替换(/(®)/ig,“®;”)。替换(/(™)/ig

我已经在代码中添加了第一个函数superscriptDesignation,现在想在teamDesignations中的项上调用它。做

return superscriptDesignation(teamDesignations);
控制台中出现错误,未定义.replace。如何将我的函数superscriptDesignation添加到团队名称中

JS

var superscriptDesignation=功能(名称){
返回名称。替换(/(®)/ig,“®;”)。替换(/(™)/ig,“™;”;
};
var getTeamDesignations=函数(配置文件){
//单个团队成员的指定
var团队名称=[];
if(团队成员简介){
团队名称=u.chain(profile.team_成员)
.filter(u.compose(u.isArray,u.property('team_member_指定')))
.map(u.property(“团队成员名称”))
.flatte()
.uniq()
.value();
}
返回团队名称;
};

这让我想到的是,
teamDesignations
在传递给
superScriptDesignations
时不是字符串。replace()
只是字符串原型上的一个方法


我不熟悉
.uniq()
.flatte()
,但是该方法的结果是一个字符串吗?无论哪种方式,它都在
if
语句中,因此如果不满足这一点
团队指定
在传递到
superScriptDesignation
时可能是一个空数组

您可以修改第一个函数中的
replace()
方法来处理数组,也可以进行一些错误处理以确保参数是字符串。例如:

  var superscriptDesignation = function(designation) {
    if(typeof(designation === 'string)) {
       //... do your stuff
    }
};

什么时候出现此错误?似乎您正在为
superscriptDesignation
函数提供非字符串值。或者根本不提供它。您没有在superscriptDesignation中传递参数,这就是它抱怨的原因。replace不是一个函数
teamDesignations
getTeamDesignations
的范围内在
teamDesignations
函数之外无法访问d。(JS作用域)您应该像
superscriptDesignation(getTeamDesignations(无论什么))
加上
teamDesignations
似乎是一个数组,数组没有
replace
方法。如何删除
var superscriptDesignationList=getTeamDesignations(profileData).map(上标设计)
  var superscriptDesignation = function(designation) {
    if(typeof(designation === 'string)) {
       //... do your stuff
    }
};