Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.06.2016, 10:29
Интересующийся
Отправить личное сообщение для Михаил94Связь Посмотреть профиль Найти все сообщения от Михаил94Связь
 
Регистрация: 03.06.2016
Сообщений: 13

Найти число в массиве чисел
У меня есть массив A[1,2];
Мне нужно проверить есть ли число 2 в массиве A ?. Как это можно сделать, подскажите, пожалуйста?
Мне нужно чтобы функция возвращала результат, а не ввиде alert
Ответить с цитированием
  #2 (permalink)  
Старый 03.06.2016, 10:40
Интересующийся
Отправить личное сообщение для Михаил94Связь Посмотреть профиль Найти все сообщения от Михаил94Связь
 
Регистрация: 03.06.2016
Сообщений: 13

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Связь, 03.06.2016 в 10:42.
Ответить с цитированием
  #3 (permalink)  
Старый 03.06.2016, 10:59
Аватар для destus
Профессор
Отправить личное сообщение для destus Посмотреть профиль Найти все сообщения от destus
 
Регистрация: 18.05.2011
Сообщений: 1,207

Михаил94Связь,
https://developer.mozilla.org/ru/doc...cts/Array/find
Ответить с цитированием
  #4 (permalink)  
Старый 03.06.2016, 11:56
Интересующийся
Отправить личное сообщение для Михаил94Связь Посмотреть профиль Найти все сообщения от Михаил94Связь
 
Регистрация: 03.06.2016
Сообщений: 13

Можно пример ?
Ответить с цитированием
  #5 (permalink)  
Старый 03.06.2016, 12:19
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

Михаил94Связь,
indexOf
Ответить с цитированием
  #6 (permalink)  
Старый 03.06.2016, 12:34
Интересующийся
Отправить личное сообщение для Михаил94Связь Посмотреть профиль Найти все сообщения от Михаил94Связь
 
Регистрация: 03.06.2016
Сообщений: 13

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?
Ответить с цитированием
  #7 (permalink)  
Старый 03.06.2016, 14:00
Аватар для destus
Профессор
Отправить личное сообщение для destus Посмотреть профиль Найти все сообщения от destus
 
Регистрация: 18.05.2011
Сообщений: 1,207

Цитата:
Почему мне функция возвращает undefined?
Написано же, что undefined возвращается, когда элемент не найден. Напишите сюда свой массив и искомый элемент
Ответить с цитированием
  #8 (permalink)  
Старый 03.06.2016, 14:04
Аватар для Botik21
Аспирант
Отправить личное сообщение для Botik21 Посмотреть профиль Найти все сообщения от Botik21
 
Регистрация: 01.06.2016
Сообщений: 87

Телепатия сложная вещь, не все ею владеют
function A() {
	var a = [1,2,3],
		find = 3;

	return -1 != a.indexOf(find) ? find : true;
}

Последний раз редактировалось Botik21, 03.06.2016 в 14:06.
Ответить с цитированием
  #9 (permalink)  
Старый 03.06.2016, 14:17
Интересующийся
Отправить личное сообщение для Михаил94Связь Посмотреть профиль Найти все сообщения от Михаил94Связь
 
Регистрация: 03.06.2016
Сообщений: 13

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;
        }
 
    }
}
Ответить с цитированием
  #10 (permalink)  
Старый 03.06.2016, 14:18
Интересующийся
Отправить личное сообщение для Михаил94Связь Посмотреть профиль Найти все сообщения от Михаил94Связь
 
Регистрация: 03.06.2016
Сообщений: 13

Переписал по другому, но всеравно не работает. context.controls.FormComboBox.getValue().Code - это выбранное значение в комбобоксе. А это e.FormOfFinancialStatement.Code - значение, которое находится в DataGrid. Я проверяю, если выбранное значение не равно значениям которые лежат в DataGrid, то я могу добавить значение, иначе нет. Просто у меня должны быть значения которые не дублируются
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как найти дубли в массиве optsar jQuery 6 10.12.2015 21:46
Min max значение в массиве чисел Элиас Общие вопросы Javascript 2 07.11.2015 10:43
Как найти повторяющееся число?? Brook Events/DOM/Window 2 21.08.2013 19:41
Как найти наибольшее число и ввести его на экран? Ivan152 Оффтопик 2 20.05.2012 20:13
Как найти индекс по элементу в двумерном массиве? bayah Общие вопросы Javascript 5 22.04.2010 16:26