【发布时间】:2016-12-02 02:04:54
【问题描述】:
如果 profile.team_member_designations 是一个数组,则运行以下代码。我想添加一个条件来过滤或检查 profile_member_designations 是否是一个数组,因为如果它是一个字符串,我不希望代码运行。本质上,就在 map 函数之前,我想过滤掉数组,只在代码中运行。我该怎么做?
JS
var getTeamDesignations = function(profile) {
//Designations for a single team member
var teamDesignations = [];
if (profile.team_members) {
teamDesignations = _.chain(profile.team_members)
.map(_.property('team_member_designations'))
.flatten()
.uniq()
.value();
}
return teamDesignations;
};
【问题讨论】:
-
您的代码中没有
profile.team_member_designations。但最简单的方法是使用typeof运算符:stackoverflow.com/q/6286542/215552 -
if (profile.team_members && Array.isArray(profile.team_members.team_member_designations)) { ...