3

我正在使用以下代码行

var selectedMedId = jQuery.grep(privateVariables.medIdData, function (n) {
    if (n.DescriptionWithCode.toString().toUpperCase() === description.toString().toUpperCase()) {
        return n;
    }
});

我也尝试过

 var selectedMedId = jQuery.grep(privateVariables.medIdData, function (n) {
     return n.DescriptionWithCode.toString().toUpperCase() === description.toString().toUpperCase();
 }
 });

我想摆脱这个警告。

4

1 回答 1

0

如果您在这里寻找单个 ID,这应该是正确的语法:

var selectedMedId = jQuery.grep(privateVariables.medIdData, function (n) {
    return (n.DescriptionWithCode.toString().toUpperCase() === description.toString().toUpperCase());
})[0];

if (selectedMedId) {
    ...
}

看起来您的第一次尝试是返回一个对象而不是trueor false,而您的第二次尝试有一个右括号太多。

线索在警告中,第一次尝试并不总是从 $.grep 返回,只有在 n.DescriptionWithCode 和描述中匹配时才会返回。

于 2013-08-08T14:04:52.297 回答