Найти число в массиве чисел
У меня есть массив A[1,2];
Мне нужно проверить есть ли число 2 в массиве A ?. Как это можно сделать, подскажите, пожалуйста? Мне нужно чтобы функция возвращала результат, а не ввиде alert |
var b = false; a.forEach(function (item) { if (context.controls.FormComboBox.getValue().Code != item.FormOfFinancialStatement.Code) b = true; }); return b; } return true; a - это массив. У меня есть датагрид где лежит 2 значения. Я хочу добавить 3 значение. Открывается экран и я в списке должен выбрать значение. Если оно есть в датагриде, то не добавлять значение в датагрид |
Михаил94Связь,
https://developer.mozilla.org/ru/doc...cts/Array/find |
Можно пример ?
|
Михаил94Связь,
indexOf |
function A() { var a = context.parameters.FormOfFinancialStatement.getValue(); if (a != undefined) { var result = a.find(function (item) { return context.controls.FormComboBox.getValue().Code != item.FormOfFinancialStatement.Code }); } else { return true; } }Почему мне функция возвращает undefined? |
Цитата:
|
Телепатия сложная вещь, не все ею владеют
function A() { var a = [1,2,3], find = 3; return -1 != a.indexOf(find) ? find : true; } |
function GetCompanyProfile988ResponseAdditionalDocumentsViewOnSaveClick(context, args) { if (validateObligatoryFields() && A()) { context.global.executeAction( context, { SaveAction: { DestinationValue: { Source: 'MainDataSource' } } } ); } else { toastr.warning('dadas') } function validateObligatoryFields() { var additionalDocuments = context.dataSources.MainDataSource.getSelectedItem(); var obligatoryFields = [ { field: additionalDocuments.FormOfFinancialStatement, caption: 'Форма бухгалтерской отчетности' }, { field: additionalDocuments.NameOfFinancialStatement, caption: 'Наименование формы бухгалтерской отчетности в произвольной форме' }, { field: additionalDocuments.Attachment, caption: 'Прикрепленный файл' } ]; return ValidateGkhObligatoryFields(obligatoryFields); } function A() { var a = context.parameters.FormOfFinancialStatement.getValue(); if (a != undefined) { return a.reduce(function(p, e, i){ if(p >= 0) return p; return (context.controls.FormComboBox.getValue().Code != e.FormOfFinancialStatement.Code) ? i : p; }, -1) } else { return true; } } } |
Переписал по другому, но всеравно не работает. context.controls.FormComboBox.getValue().Code - это выбранное значение в комбобоксе. А это e.FormOfFinancialStatement.Code - значение, которое находится в DataGrid. Я проверяю, если выбранное значение не равно значениям которые лежат в DataGrid, то я могу добавить значение, иначе нет. Просто у меня должны быть значения которые не дублируются
|
Часовой пояс GMT +3, время: 09:33. |