Используйте moment.js для синтаксического анализа дат:
var caseOne = moment("Jul 8, 2005", "MMM D, YYYY", true).toDate();
var caseTwo = moment("2005-07-08", "YYYY-MM-DD", true).toDate();
Третий аргумент определяет строгий разбор (доступно с 2.3.0). Без него moment.js также может давать неверные результаты.
Возможно, я являюсь сумасшедшим, но вызываю беспокойство о скорости в случаях как это использование интерпретируемого языка, похож на попытку выяснить что цвет нарисовать сарай. Даже давайте не входить в идею, что этот вид оптимизации совершенно преждевременен.
Вы попадаете в точку при высказывании 'пригодности для обслуживания'. Я выбрал бы подход, который является самым продуктивным и самым удобным в сопровождении. Если необходимо ускориться позже, это не собирается прибывать из переключения между процедурным по сравнению с объектно-ориентированными парадигмами кодирования в интерпретируемом языке.
Нижняя строка: нет, потому что издержки интерпретации сокрушают издержки диспетчеризации метода.
При использовании интерпретируемого языка различие не важно. Вы не должны использовать интерпретируемый язык, если производительность является проблемой. Оба будут работать о том же.
Ваша производительность будет характеризоваться реализацией, не языком. Вы могли использовать самый медленный язык, и он мог масштабироваться, чтобы быть самым большим сайтом в мире, пока Вы разрабатываете его для масштабирования.
Просто помнят первое правило optimiztion.
не Делают.
:)
Я на самом деле сделал маленький тест как это в Python на веб-сайте, который я поддерживаю и нашел, что они почти эквивалентны в скорости с процедурным подходом, побеждающим чем-то как десять тысячных частей секунды, но что код OO был так значительно более чистым, я не продолжал осуществление больше, чем одно повторение.
Поэтому действительно, это не имеет значения (по моему опыту, так или иначе).