Pantene742, вот
Access в Array происходит за О(1). Поиск по массиву, это когда мы ищем значение элемента массива. Индексы известны заранее. Поэтому и обращение по индексу выполняется быстро
если скрипты настолько критически важны, что проверку необходимо автоматизировать, то я спрошу, а что должно быть по нажатию?
должен отправится какой-то запрос? как вариант - встречать на бэке
изменения в юи? селениум это проверит
просто изменения во внутреннем стейте? но вы их не проверите не только селениумом, но и тесткафе, кодесептом и т.д. Тут нужно будет с разработчиками обсуждать
если они заведудт методы, чтобы этот стейт можно было узнать - селениум умеет исполнять js в браузере
но это, опять же, при условии, что там какие-то космически важные скрипыт запускаются при нажатии на кнопку Обзор (Choose file)
Wet_Dumplings, ну странное дело:
номер автомобиля - строка
марка авто - строка
модель - строка
имя владельца - строка (3, если отдельно хранить фио)
дата последнего ремонта - Date
когда закончить ремонт - тоже Date
Я вижу 6 переменных, которые нужно записывать, ханить, читать и удалять вместе.
Куда вы хотите писать все эи данные без ООП? Если нужно хранить это все в одной переменнй (что очень странно), то клейте все в одну строку типа Toyota_Corolla_Иванов_Сергей_22.06.2012_29.12.2018.
Упорото конечно, но в одной переменной
Но еще раз, а можно посмотреть, как выглядит задание в оригинале
Nikolay37, здесь вот какая штука, как ни крути, а перебор ключей никуда не денется.
Или вы рукаи пишете if'ы или брать из массива, в целом-то, примерно одно и то же
Мне лично, хочется добавить еще один вариант реализации - Map()
В 6й версии ECMAScript есть Map - хранилище по типу ключ/значение
Я бы сделал мэпу , и наполнил бы ее данными типа "key1" -> processKey1, "key2" -> processKey2, "key3" -> processKey3 и т.д.
было бы удобно myMap.get(data.name)(data)
Так вам будет возвращаться нужная функция по ключу.
Это был бы лучший вариант, если бы мэпа в js работала как, например, в java (HashMap). Тогда бы операция чтения была бы константной
Но в js мэпа использует другой алгоитм для поиска по ключу. Так что это просто еще один кандидат на бенчмарк. При условии, что целевой движок поддерживает es6
Nikolay37, бенчмарк штука сложная. Прогреть машину, подготовить большой датасет, несколько прогонов, вот это все. Этим нужно прям заняться
У вас веб-приложение? Или вы на node.js какую-то серверную часть пилите?