Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 07.06.2018, 11:12
Аватар для Colonelo
Новичок на форуме
Отправить личное сообщение для Colonelo Посмотреть профиль Найти все сообщения от Colonelo
 
Регистрация: 26.04.2018
Сообщений: 7

Найти минимальное значение из массива
Есть код:

function min(obj) {
    var a;
    for (var i = 0; i < obj.length; i++) {
        if (obj[i] < obj[0]) {
            a = obj[i];
        }
    }
    return a;
}


Я полагаю что ошибка в ифе и что надо сравнивать со всеми объектами из массива, но не понимаю как это сформулировать.
Ответить с цитированием
  #2 (permalink)  
Старый 07.06.2018, 11:25
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Colonelo,
function min(obj) {
    var a = obj[0];
    for (var i = 1; i < obj.length; i++) {
        if (obj[i] < a) {
            a = obj[i];
        }
    }
    return a;
}
Ответить с цитированием
  #3 (permalink)  
Старый 07.06.2018, 11:31
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

function min(obj) {
    return Math.min.apply(Math, obj);
}


ES6:
const min = obj => Math.min(...obj);
Ответить с цитированием
  #4 (permalink)  
Старый 07.06.2018, 11:38
Аватар для Colonelo
Новичок на форуме
Отправить личное сообщение для Colonelo Посмотреть профиль Найти все сообщения от Colonelo
 
Регистрация: 26.04.2018
Сообщений: 7

Спасибо за быстрый ответ
Ответить с цитированием
  #5 (permalink)  
Старый 07.06.2018, 11:57
Аватар для Colonelo
Новичок на форуме
Отправить личное сообщение для Colonelo Посмотреть профиль Найти все сообщения от Colonelo
 
Регистрация: 26.04.2018
Сообщений: 7

А как найти второе по величине число из такого же массива?
Ответить с цитированием
  #6 (permalink)  
Старый 07.06.2018, 12:00
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

var x = obj.sort((a,b)=> a-b)[1];


дубли не игнорируются

Последний раз редактировалось j0hnik, 07.06.2018 в 12:11.
Ответить с цитированием
  #7 (permalink)  
Старый 07.06.2018, 12:02
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

var x = obj.filter((v, i, s)=>s.indexOf(v) === i).sort((a,b)=> a-b)[1];


дубли игнорируются

Последний раз редактировалось j0hnik, 07.06.2018 в 12:11.
Ответить с цитированием
  #8 (permalink)  
Старый 07.06.2018, 12:09
Аватар для Colonelo
Новичок на форуме
Отправить личное сообщение для Colonelo Посмотреть профиль Найти все сообщения от Colonelo
 
Регистрация: 26.04.2018
Сообщений: 7

А без использования сортировки?
Ответить с цитированием
  #9 (permalink)  
Старый 07.06.2018, 12:19
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

var x = Math.min(...obj.filter(el=> el > Math.min(...obj)));
Ответить с цитированием
  #10 (permalink)  
Старый 07.06.2018, 12:47
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Colonelo,
function min(obj) {
    var a = [obj[0]];
    for (var i = 1; i < obj.length; i++) {
        for (var k = 0; k < a.length; k++)
            if (obj[i] < a[k]) break;
        a.splice(k, 0, obj[i])
    }
    return a
}
alert(min([4, 8, 1, 12, -3, 1]));
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Найти максимальное и минимальное значение в элементах DOM smart-create Events/DOM/Window 17 11.07.2017 13:36
Найти сумму квадратов элементов массива yaparoff Общие вопросы Javascript 4 18.01.2017 19:03
вывод данных из массива JSON Vincent Vega jQuery 19 04.03.2016 13:44
Проблемы с выпадающим списком JavaScript ursus102 Общие вопросы Javascript 0 16.01.2016 19:30
Значение элемента из одного массива в другой массив Ambassador Общие вопросы Javascript 5 13.11.2015 01:53