Технически говоря, вы не должны делать age-1
, вы можете просто сделать age
... Гоча является то, что вы должны ввести возраст, начиная с 0 вместо 1. (Предполагается, что ваш массив является точной для 0 означает менее, чем один месяц.)
причина, как объясняется в другом ответе и комментариях, заключается в том, что массивы начинаются с 0 в javascript (и чаще всего, за исключением некоторых странных мест).
В качестве альтернативы вы можете добавить значение filler для позиции 0 в массиве. Здесь я добавил 1. Теперь вам не нужно использовать age-1
, вы можете просто использовать age
.
var minWeight = [1, 5, 15, 25, 45, 60, 70, 75, 80];
Вот еще одна альтернатива, которая модифицирует массив таким же образом;
var minWeight = [, 5, 15, 25, 45, 60, 70, 75, 80];
Только на этот раз первое место, которое занимает индекс 0, не определено.
Here's some history to read up on.
Массив индексов кардинальное вместо порядкового. Первым (порядковым) местом является индекс 0 (кардинал). У объектов также могут быть номера, но они номинированы.
Here's a clear explanation. Порядковый для заказа (1-й), кардинал для подсчета (0, 1, 2 ...), номинальный для наименования (№ 3).
Но что конкретно означает -1? Это заставляет начинать с 1 вместо 0? Я новичок в этом, если это глупый вопрос. – Bowie
Мы не знаем, что в ваших переменных, поэтому мы не можем помочь. – Blazemonger
http://image.prntscr.com/image/1698a6f659304153874b6c4cebb09628.png Будет ли это помогать? – Bowie