Форум программистов, компьютерный форум, киберфорум
JavaScript для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
-11 / 6 / 0
Регистрация: 23.02.2023
Сообщений: 431

Скрипт, определяющий по введенной дате рождения знак зодиака

19.07.2025, 15:02. Показов 1662. Ответов 37
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
<button id="minusWeek">-</button>
<button id="plusWeek">+</button>
<select id="desiredDay"></select>
<button id="minusDay">-</button>
<button id="plusDay">+</button>
<select id="desiredMonth"></select>
<button id="minusMonth">-</button>
<button id="plusMonth">+</button>
<button id="today"></button>
<script>
скрипт для выбора даты... 
</script>
<div id="zodiacSign"></div>
есть такой html

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<script>
  var zodiacSigns = [
    { html: '<span class="bBold">Овен</span> <span class="zodiacGlyph">♈</span><br><span class="bNormal">21 марта — 20 апреля</span>', date: [3, 21] },
    { html: '<span class="bBold">Телец</span> <span class="zodiacGlyph">♉</span><br><span class="bNormal">21 апреля — 20 мая</span>', date: [4, 21] },
    { html: '<span class="bBold">Близнецы</span> <span class="zodiacGlyph">♊</span><br><span class="bNormal">21 мая — 21 июня</span>', date: [5, 21] },
    { html: '<span class="bBold">Рак</span> <span class="zodiacGlyph">♋</span><br><span class="bNormal">22 июня — 22 июля</span>', date: [6, 22] },
    { html: '<span class="bBold">Лев</span> <span class="zodiacGlyph">♌</span><br><span class="bNormal">23 июля — 22 августа</span>', date: [7, 23] },
    { html: '<span class="bBold">Дева</span> <span class="zodiacGlyph">♍</span><br><span class="bNormal">23 августа — 22 сентября</span>', date: [8, 23] },
    { html: '<span class="bBold">Весы</span> <span class="zodiacGlyph">♎</span><br><span class="bNormal">23 сентября — 22 октября</span>', date: [9, 23] },
    { html: '<span class="bBold">Скорпион</span> <span class="zodiacGlyph">♏</span><br><span class="bNormal">23 октября — 21 ноября</span>', date: [10, 23] },
    { html: '<span class="bBold">Стрелец</span> <span class="zodiacGlyph">♐</span><br><span class="bNormal">23 ноября — 22 декабря</span>', date: [11, 23] },
    { html: '<span class="bBold">Козерог</span> <span class="zodiacGlyph">♑</span><br><span class="bNormal">21 декабря — 19 января</span>', date: [12, 21] },
    { html: '<span class="bBold">Водолей</span> <span class="zodiacGlyph">♒</span><br><span class="bNormal">20 января — 19 февраля</span>', date: [1, 20] },
    { html: '<span class="bBold">Рыбы</span> <span class="zodiacGlyph">♓</span><br><span class="bNormal">20 февраля — 20 марта</span>', date: [2, 20] }
  ];
 
  var desiredDay = document.getElementById('desiredDay');
  var desiredMonth = document.getElementById('desiredMonth');
  var zodiacSignDiv = document.getElementById('zodiacSign');
 
  function isDateLessOrEqual(date1, date2) {
    if (date1[0] < date2[0]) return true;
    if (date1[0] === date2[0] && date1[1] <= date2[1]) return true;
    return false;
  }
 
  function findZodiac(monthZeroBased, day) {
    var month = monthZeroBased + 1;
    var selectedDate = [month, day];
    for (var i = zodiacSigns.length - 1; i >= 0; i--) {
      var signDate = zodiacSigns[i].date;
      if (isDateLessOrEqual(signDate, selectedDate)) {
        return zodiacSigns[i].html;
      }
    }
    return zodiacSigns[zodiacSigns.length - 1].html;
  }
 
  function updateZodiac() {
    var day = parseInt(desiredDay.value, 10);
    var month = parseInt(desiredMonth.value, 10);
    if (!isNaN(day) && !isNaN(month)) {
      zodiacSignDiv.innerHTML = findZodiac(month, day);
    } else {
      zodiacSignDiv.innerHTML = '';
    }
  }
  desiredDay.addEventListener('change', updateZodiac);
  desiredMonth.addEventListener('change', updateZodiac);
 
  updateZodiac();
</script>
скрипт вставляет последний знак зодиака, а по идее должен вставлятся знак соответствующий дате в селектах

скрипт должен
1. считать данные из селект
2. сравнить значения из селектов и значения в массиве, найти в массиве ближайшую дату, меньше или равную дате из селектов, и вставить в див соответствующий хтмл код
3. скрипт должен реагировать как на ручной выбор значений в селектах , так и на изменение даты при клике на кнопки... помогите исправить
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
19.07.2025, 15:02
Ответы с готовыми решениями:

Скрипт, определяющий по введенной дате рождения знак зодиака, день недели, был ли год рождения високосным.
Здравствуйте, ребят буду благодарен если кто напишет, в написанном постараюсь разобраться сам. ...

Даны два целых числа: D (день) и M (месяц), определяющие дату. Вывести знак Зодиака, соответствующий этой дате.
Даны два целых числа: D (день) и M (месяц), определяющие дату. Вывести знак Зодиака,...

Написать скрипт, который определяет по введенной дате рождения сколько было лет в период всей жизни
Написать скрипт, который определяет по введенной дате рождения сколько было лет в период всей...

37
-11 / 6 / 0
Регистрация: 23.02.2023
Сообщений: 431
20.07.2025, 20:25  [ТС]
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
<script>
  // Массив знаков зодиака (месяцы 1..12)
  var zodiacSigns = [
  { html: '<span class="bBold">Овен</span> <span class="zodiacGlyph">♈</span><br><span class="bNormal">21 марта — 20 апреля</span>', month: 3, day: 21 },
  { html: '<span class="bBold">Телец</span> <span class="zodiacGlyph">♉</span><br><span class="bNormal">21 апреля — 20 мая</span>', month: 4, day: 21 },
  { html: '<span class="bBold">Близнецы</span> <span class="zodiacGlyph">♊</span><br><span class="bNormal">21 мая — 21 июня</span>', month: 5, day: 21 },
  { html: '<span class="bBold">Рак</span> <span class="zodiacGlyph">♋</span><br><span class="bNormal">22 июня — 22 июля</span>', month: 6, day: 22 },
  { html: '<span class="bBold">Лев</span> <span class="zodiacGlyph">♌</span><br><span class="bNormal">23 июля — 22 августа</span>', month: 7, day: 23 },
  { html: '<span class="bBold">Дева</span> <span class="zodiacGlyph">♍</span><br><span class="bNormal">23 августа — 22 сентября</span>', month: 8, day: 23 },
  { html: '<span class="bBold">Весы</span> <span class="zodiacGlyph">♎</span><br><span class="bNormal">23 сентября — 22 октября</span>', month: 9, day: 23 },
  { html: '<span class="bBold">Скорпион</span> <span class="zodiacGlyph">♏</span><br><span class="bNormal">23 октября — 21 ноября</span>', month: 10, day: 23 },
  { html: '<span class="bBold">Стрелец</span> <span class="zodiacGlyph">♐</span><br><span class="bNormal">23 ноября — 22 декабря</span>', month: 11, day: 23 },
  { html: '<span class="bBold">Козерог</span> <span class="zodiacGlyph">♑</span><br><span class="bNormal">21 декабря — 19 января</span>', month: 12, day: 21 },
  { html: '<span class="bBold">Водолей</span> <span class="zodiacGlyph">♒</span><br><span class="bNormal">20 января — 19 февраля</span>', month: 1, day: 20 },
  { html: '<span class="bBold">Рыбы</span> <span class="zodiacGlyph">♓</span><br><span class="bNormal">20 февраля — 20 марта</span>', month: 2, day: 20 }
  ];
  
  // Получаем элементы
  var desiredDay = document.getElementById('desiredDay');
  var desiredMonth = document.getElementById('desiredMonth');
  var zodiacSignDiv = document.getElementById('zodiacSign');
  
  var minusWeek = document.getElementById('minusWeek');
  var plusWeek = document.getElementById('plusWeek');
  var minusDay = document.getElementById('minusDay');
  var plusDay = document.getElementById('plusDay');
  var minusMonth = document.getElementById('minusMonth');
  var plusMonth = document.getElementById('plusMonth');
  var todayBtn = document.getElementById('today');
  
  // Функция для получения порядкового дня в году (без високосности)
  function dayOfYear(monthOneBased, day) {
  var daysInMonths = [31,28,31,30,31,30,31,31,30,31,30,31];
  var sum = 0;
  for (var i = 0; i < monthOneBased - 1; i++) {
  sum += daysInMonths[i];
  }
  sum += day;
  return sum;
  }
  
  // Функция поиска знака зодиака по выбранной дате
  function findZodiac(monthZeroBased, day) {
  var month = monthZeroBased + 1;
  var selectedDayOfYear = dayOfYear(month, day);
  
  // Создаем массив дней начала знаков
  var zodiacDays = zodiacSigns.map(function(sign) {
  return {
  html: sign.html,
  dayOfYear: dayOfYear(sign.month, sign.day)
  };
  });
  
  // Сортируем по дню в году
  zodiacDays.sort(function(a,b){return a.dayOfYear - b.dayOfYear;});
  
  // Если выбранный день меньше даты первого знака, значит знак - последний (Козерог)
  if (selectedDayOfYear < zodiacDays[0].dayOfYear) {
  return zodiacDays[zodiacDays.length - 1].html;
  }
  
  // Ищем знак с максимальной датой начала, не превышающей выбранную
  for (var i = zodiacDays.length - 1; i >= 0; i--) {
  if (selectedDayOfYear >= zodiacDays[i].dayOfYear) {
  return zodiacDays[i].html;
  }
  }
  
  // На всякий случай
  return zodiacDays[zodiacDays.length - 1].html;
  }
  
  // Функция обновления знака в диве
  function updateZodiac() {
  var day = parseInt(desiredDay.value, 10);
  var month = parseInt(desiredMonth.value, 10);
  if (!isNaN(day) && !isNaN(month)) {
  zodiacSignDiv.innerHTML = findZodiac(month, day);
  } else {
  zodiacSignDiv.innerHTML = '';
  }
  }
  
  // ВАЖНО: этот скрипт НЕ управляет селектами и кнопками, 
  // а только слушает их события и обновляет знак.
  
  // Подписываемся на события изменения селектов
  desiredDay.addEventListener('change', updateZodiac);
  desiredMonth.addEventListener('change', updateZodiac);
  
  // Подписываемся на клики кнопок, которые меняют дату в вашем первом скрипте
  // Чтобы знак обновлялся после изменения даты
  
  // Для кнопок, которые меняют дату, мы просто вызываем updateZodiac после клика.
  // Предполагается, что первый скрипт обновляет селекты, а здесь просто читаем их значения.
  
  if(minusWeek) minusWeek.addEventListener('click', function(){ setTimeout(updateZodiac, 0); });
  if(plusWeek) plusWeek.addEventListener('click', function(){ setTimeout(updateZodiac, 0); });
  if(minusDay) minusDay.addEventListener('click', function(){ setTimeout(updateZodiac, 0); });
  if(plusDay) plusDay.addEventListener('click', function(){ setTimeout(updateZodiac, 0); });
  if(minusMonth) minusMonth.addEventListener('click', function(){ setTimeout(updateZodiac, 0); });
  if(plusMonth) plusMonth.addEventListener('click', function(){ setTimeout(updateZodiac, 0); });
  if(todayBtn) todayBtn.addEventListener('click', function(){ setTimeout(updateZodiac, 0); });
  
  // Инициалный вызов, чтобы отобразить знак при загрузке
  updateZodiac();
  </script>
в принципе вот работающий код, можно ли как то упростить логику поиска нужной даты, хтмл кода в массиве?
0
 Аватар для voraa
1249 / 1158 / 178
Регистрация: 21.01.2024
Сообщений: 5,381
20.07.2025, 20:59
Надо, что бы в массиве месяцы шли в порядке возрастания.
А у вас, допустим дата рождения июнь (6) а в последнем элементе - 2. Сразу находит, что 2 < 6 и выдает последний элемент.
0
-11 / 6 / 0
Регистрация: 23.02.2023
Сообщений: 431
20.07.2025, 22:32  [ТС]
voraa, надо делать массив типа
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
  // Массив знаков зодиака (месяцы 1..12)
  var zodiacSigns = [
 
  { html: '<span class="bBold">Водолей</span> <span class="zodiacGlyph">♒</span><br><span class="bNormal">20 января — 19 февраля</span>', [1, 20] },
  { html: '<span class="bBold">Рыбы</span> <span class="zodiacGlyph">♓</span><br><span class="bNormal">20 февраля — 20 марта</span>', [2, 20] },
  { html: '<span class="bBold">Овен</span> <span class="zodiacGlyph">♈</span><br><span class="bNormal">21 марта — 20 апреля</span>', [3, 21] },
  { html: '<span class="bBold">Телец</span> <span class="zodiacGlyph">♉</span><br><span class="bNormal">21 апреля — 20 мая</span>', [4, 21] },
  { html: '<span class="bBold">Близнецы</span> <span class="zodiacGlyph">♊</span><br><span class="bNormal">21 мая — 21 июня</span>', [5, 21] },
  { html: '<span class="bBold">Рак</span> <span class="zodiacGlyph">♋</span><br><span class="bNormal">22 июня — 22 июля</span>', [6, 22] },
  { html: '<span class="bBold">Лев</span> <span class="zodiacGlyph">♌</span><br><span class="bNormal">23 июля — 22 августа</span>', [7, 23] },
  { html: '<span class="bBold">Дева</span> <span class="zodiacGlyph">♍</span><br><span class="bNormal">23 августа — 22 сентября</span>', [8, 23] },
  { html: '<span class="bBold">Весы</span> <span class="zodiacGlyph">♎</span><br><span class="bNormal">23 сентября — 22 октября</span>', [9, 23] },
  { html: '<span class="bBold">Скорпион</span> <span class="zodiacGlyph">♏</span><br><span class="bNormal">23 октября — 21 ноября</span>', [10, 23] },
  { html: '<span class="bBold">Стрелец</span> <span class="zodiacGlyph">♐</span><br><span class="bNormal">23 ноября — 22 декабря</span>', [11, 23] },
  { html: '<span class="bBold">Козерог</span> <span class="zodiacGlyph">♑</span><br><span class="bNormal">21 декабря — 19 января</span>', [12,  21] }
  ];
я правильно поняла?
0
Эксперт JSЭксперт HTML/CSS
 Аватар для krvsa
3823 / 1661 / 428
Регистрация: 14.03.2022
Сообщений: 4,168
21.07.2025, 09:06
Цитата Сообщение от бел ка Посмотреть сообщение
надо делать массив типа
Это плохой "тип" массива.
Там много чего повторяется. Нужно делать массив в котором есть собственно отличия, а "одинаковое" убрать.
0
-11 / 6 / 0
Регистрация: 23.02.2023
Сообщений: 431
21.07.2025, 13:55  [ТС]
krvsa, например?
0
Эксперт JSЭксперт HTML/CSS
 Аватар для krvsa
3823 / 1661 / 428
Регистрация: 14.03.2022
Сообщений: 4,168
21.07.2025, 14:20
бел ка, т.е. ты не видишь одинаковые "части" в строках?

Цитата Сообщение от бел ка Посмотреть сообщение
PHP/HTML
1
<span class="bBold">Водолей</span> <span class="zodiacGlyph"></span><br><span class="bNormal">20 января — 19 февраля</span>
Тут "разное" только:
- Название знака.
- Картинка.
- Период.

Остальное у всех одинаковое. Т.е. можно представить как

JavaScript
1
['Водолей', '♒', '20 января — 19 февраля', [1, 20]]
Добавлено через 2 минуты
Цитата Сообщение от бел ка Посмотреть сообщение
JavaScript
1
{ html: '<span class="bBold">Водолей</span> <span class="zodiacGlyph">♒</span><br><span class="bNormal">20 января — 19 февраля</span>', [1, 20] }
Твой же "объект" - вообще синтаксически не верен.

Как ты там вообще программки пишешь?
0
-11 / 6 / 0
Регистрация: 23.02.2023
Сообщений: 431
23.07.2025, 04:06  [ТС]
krvsa, так?

PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <style>
        .bBold { font-weight: bold; }
        .bNormal { font-weight: normal; }
        .zodiacGlyph { font-size: 16px; }
        button { width: 30px; }
        select { width: 80px; }
    </style>
</head>
<body>
    <button id="minusWeek">-7</button>
    <button id="plusWeek">+7</button>
    <br>
    <select id="desiredDay"></select>
    <button id="minusDay">-1</button>
    <button id="plusDay">+1</button>
    <br>
    <select id="desiredMonth"></select>
    <button id="minusMonth">-1</button>
    <button id="plusMonth">+1</button>
    <br>
    <button id="today">Сегодня</button>
    <br><br>
    <div id="zodiacSign"></div>
 
    <!-- Первый скрипт: управление выбором даты -->
    <script>
        (function() {
            var daySelect = document.getElementById('desiredDay');
            var monthSelect = document.getElementById('desiredMonth');
 
            function daysInMonth(year, month) {
                return new Date(year, month + 1, 0).getDate();
            }
 
            function fillMonthSelect() {
                var monthsNames = [
                    "Январь", "Февраль", "Март", "Апрель", "Май", "Июнь",
                    "Июль", "Август", "Сентябрь", "Октябрь", "Ноябрь", "Декабрь"
                ];
                monthSelect.innerHTML = '';
                for (var i = 0; i < 12; i++) {
                    var opt = document.createElement('option');
                    opt.value = i + 1;
                    opt.textContent = monthsNames[i];
                    monthSelect.appendChild(opt);
                }
            }
 
            function fillDaySelect(year, month) {
                var maxDay = daysInMonth(year, month);
                var currentDay = parseInt(daySelect.value, 10);
                daySelect.innerHTML = '';
                for (var i = 1; i <= maxDay; i++) {
                    var opt = document.createElement('option');
                    opt.value = i;
                    opt.textContent = i;
                    daySelect.appendChild(opt);
                }
                if (currentDay && currentDay <= maxDay) {
                    daySelect.value = currentDay;
                } else {
                    daySelect.value = 1;
                }
            }
 
            function getSelectedDate() {
                var day = parseInt(daySelect.value, 10);
                var month = parseInt(monthSelect.value, 10);
                var year = new Date().getFullYear();
                return new Date(year, month - 1, day);
            }
 
            function setSelectedDate(date) {
                monthSelect.value = date.getMonth() + 1;
                fillDaySelect(date.getFullYear(), date.getMonth());
                daySelect.value = date.getDate();
                // Событие change для селектов не сработает автоматически, если значение не менялось,
                // поэтому можно вручную вызвать событие или обновить знак зодиака из второго скрипта
                // здесь просто триггерим событие change на monthSelect и daySelect:
                var event = new Event('change');
                monthSelect.dispatchEvent(event);
                daySelect.dispatchEvent(event);
            }
 
            function shiftDate(days) {
                var date = getSelectedDate();
                date.setDate(date.getDate() + days);
                setSelectedDate(date);
            }
 
            function shiftMonth(months) {
                var date = getSelectedDate();
                var day = date.getDate();
                date.setDate(1);
                date.setMonth(date.getMonth() + months);
                var maxDay = daysInMonth(date.getFullYear(), date.getMonth());
                date.setDate(Math.min(day, maxDay));
                setSelectedDate(date);
            }
 
            function shiftWeek(weeks) {
                shiftDate(7 * weeks);
            }
 
            // Привязка кнопок к функциям сдвига
            document.getElementById('minusDay').addEventListener('click', function() { shiftDate(-1); });
            document.getElementById('plusDay').addEventListener('click', function() { shiftDate(1); });
            document.getElementById('minusMonth').addEventListener('click', function() { shiftMonth(-1); });
            document.getElementById('plusMonth').addEventListener('click', function() { shiftMonth(1); });
            document.getElementById('minusWeek').addEventListener('click', function() { shiftWeek(-1); });
            document.getElementById('plusWeek').addEventListener('click', function() { shiftWeek(1); });
            document.getElementById('today').addEventListener('click', function() { setSelectedDate(new Date()); });
 
            // При смене месяца обновляем дни
            monthSelect.addEventListener('change', function() {
                var year = new Date().getFullYear();
                var month = parseInt(monthSelect.value, 10) - 1;
                fillDaySelect(year, month);
            });
 
            // Инициализация
            fillMonthSelect();
            setSelectedDate(new Date());
        })();
    </script>
 
    <!-- Второй скрипт: обновление знака зодиака -->
    <script>
        (function() {
            var zodiacSigns = [
                ["Водолей", "♒", "20 января — 19 февраля", 20],
                ["Рыбы", "♓", "20 февраля — 20 марта", 20],
                ["Овен", "♈", "21 марта — 20 апреля", 21],
                ["Телец", "♉", "21 апреля — 20 мая", 21],
                ["Близнецы", "♊", "21 мая — 21 июня", 21],
                ["Рак", "♋", "22 июня — 22 июля", 22],
                ["Лев", "♌", "23 июля — 22 августа", 23],
                ["Дева", "♍", "23 августа — 22 сентября", 23],
                ["Весы", "♎", "23 сентября — 22 октября", 23],
                ["Скорпион", "♏", "23 октября — 21 ноября", 23],
                ["Стрелец", "♐", "23 ноября — 22 декабря", 23],
                ["Козерог", "♑", "21 декабря — 19 января", 21]
            ];
 
            var daySelect = document.getElementById('desiredDay');
            var monthSelect = document.getElementById('desiredMonth');
            var zodiacDiv = document.getElementById('zodiacSign');
 
            function getZodiac(d, m) {
                var index = m - 1;
                if (d >= zodiacSigns[index][3]) {
                    return zodiacSigns[index];
                } else {
                    var prevIndex = (m + 10) % 12;
                    return zodiacSigns[prevIndex];
                }
            }
 
            function updateZodiacSign() {
                var day = parseInt(daySelect.value, 10);
                var month = parseInt(monthSelect.value, 10);
                if (!day || !month) {
                    zodiacDiv.innerHTML = '';
                    return;
                }
                var sign = getZodiac(day, month);
                var html = '<span class="bBold">' + sign[0] + '</span> ' +
                           '<span class="zodiacGlyph">' + sign[1] + '</span><br>' +
                           '<span class="bNormal">' + sign[2] + '</span>';
                zodiacDiv.innerHTML = html;
            }
 
            // Обновляем знак при изменениях селектов
            daySelect.addEventListener('change', updateZodiacSign);
            monthSelect.addEventListener('change', updateZodiacSign);
 
            // Кнопки клики обновляют дату через первый скрипт,
            // а событие change на селектах уже обновит знак,
            // но для уверенности можно повесить обработчик на кнопки и вызвать updateZodiacSign
            var buttons = [
                'minusDay', 'plusDay',
                'minusMonth', 'plusMonth',
                'minusWeek', 'plusWeek',
                'today'
            ];
            buttons.forEach(function(id) {
                var btn = document.getElementById(id);
                if (btn) {
                    btn.addEventListener('click', updateZodiacSign);
                }
            });
 
            // Инициално обновим знак после загрузки
            updateZodiacSign();
        })();
    </script>
</body>
</html>
0
Эксперт JSЭксперт HTML/CSS
 Аватар для krvsa
3823 / 1661 / 428
Регистрация: 14.03.2022
Сообщений: 4,168
23.07.2025, 09:07
Цитата Сообщение от бел ка Посмотреть сообщение
так?
Массив теперь действительно разный.

Цитата Сообщение от бел ка Посмотреть сообщение
JavaScript
1
2
3
["Скорпион", "♏", "23 октября — 21 ноября", 23],
["Стрелец", "♐", "23 ноября — 22 декабря", 23],
["Козерог", "♑", "21 декабря — 19 января", 21]
Тут с датами явно что-то не так...
0
-11 / 6 / 0
Регистрация: 23.02.2023
Сообщений: 431
23.07.2025, 13:28  [ТС]
krvsa, а можно чуть подробнее? что не так с датами? 23, 21 это дата начала отображения знака...
0
Эксперт JSЭксперт HTML/CSS
 Аватар для krvsa
3823 / 1661 / 428
Регистрация: 14.03.2022
Сообщений: 4,168
23.07.2025, 14:10
бел ка, как ты пишешь программки, если не видишь очевидного?
Посмотри на свои периоды.
23 октября — 21 ноября и 23 ноября — 22 декабря
22 ноября какой будет знак зодиака?

23 ноября — 22 декабря и 21 декабря — 19 января
Получается 21 декабря рождаются с двумя знаками сразу!
0
-11 / 6 / 0
Регистрация: 23.02.2023
Сообщений: 431
23.07.2025, 16:41  [ТС]
krvsa, надеюсь сейчас всё правильно? плюс реализовано две версии с диапазонами дат знаков зодиака, русскоязычная, и западная(классическая)

PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
<!DOCTYPE html>
<html lang="ru">
<head>
  <meta charset="UTF-8" />
  <title>Знак зодиака</title>
  <style>
    .bBold { font-weight: bold; }
    .bNormal { font-weight: normal; }
    .zodiacGlyph { font-size: 16px; }
  </style>
</head>
<body>
 
  <div>
    <button id="minusWeek">-7</button>
    <button id="plusWeek">+7</button>
    <br />
    <select id="desiredDay"></select>
    <button id="minusDay">-1</button>
    <button id="plusDay">+1</button>
    <br />
    <select id="desiredMonth"></select>
    <button id="minusMonth">-1</button>
    <button id="plusMonth">+1</button>
    <br />
    <button id="today">Сегодня</button>
    
  </div>
 
  <div id="zodiacSign"></div><br>
  <select id="versionSelect"></select>
 
  <!-- Первый скрипт: управление выбором даты -->
  <script>
    (function() {
      var daySelect = document.getElementById('desiredDay');
      var monthSelect = document.getElementById('desiredMonth');
 
      // Заполнить селект месяцев
      function fillMonthSelect() {
        var monthsNames = [
          "Январь", "Февраль", "Март", "Апрель", "Май", "Июнь",
          "Июль", "Август", "Сентябрь", "Октябрь", "Ноябрь", "Декабрь"
        ];
        monthSelect.innerHTML = '';
        monthsNames.forEach(function(name, i) {
          var opt = document.createElement('option');
          opt.value = i + 1;
          opt.textContent = name;
          monthSelect.appendChild(opt);
        });
      }
 
      // Кол-во дней в месяце с учётом високосного года
      function daysInMonth(year, month) {
        return new Date(year, month + 1, 0).getDate();
      }
 
      // Заполнить селект дней с учётом месяца
      function fillDaySelect(year, month) {
        var maxDay = daysInMonth(year, month);
        var currentDay = parseInt(daySelect.value, 10);
        daySelect.innerHTML = '';
        for(var i=1; i<=maxDay; i++) {
          var opt = document.createElement('option');
          opt.value = i;
          opt.textContent = i;
          daySelect.appendChild(opt);
        }
        if(currentDay && currentDay <= maxDay) {
          daySelect.value = currentDay;
        } else {
          daySelect.value = 1;
        }
      }
 
      // Получить выбранную дату (год текущий)
      function getSelectedDate() {
        var day = parseInt(daySelect.value, 10);
        var month = parseInt(monthSelect.value, 10);
        var year = new Date().getFullYear();
        return new Date(year, month - 1, day);
      }
 
      // Установить дату в селекты
      function setSelectedDate(date) {
        monthSelect.value = date.getMonth() + 1;
        fillDaySelect(date.getFullYear(), date.getMonth());
        daySelect.value = date.getDate();
 
        // Запустить событие change для обновления вывода знака
        var event = new Event('change');
        monthSelect.dispatchEvent(event);
        daySelect.dispatchEvent(event);
      }
 
      // Сдвиг даты на days дней
      function shiftDate(days) {
        var date = getSelectedDate();
        date.setDate(date.getDate() + days);
        setSelectedDate(date);
      }
 
      // Сдвиг месяца с корректировкой дней
      function shiftMonth(months) {
        var date = getSelectedDate();
        var day = date.getDate();
        date.setDate(1);
        date.setMonth(date.getMonth() + months);
        var maxDay = daysInMonth(date.getFullYear(), date.getMonth());
        date.setDate(Math.min(day, maxDay));
        setSelectedDate(date);
      }
 
      // Сдвиг недели
      function shiftWeek(weeks) {
        shiftDate(7 * weeks);
      }
 
      // Привязка кнопок
      document.getElementById('minusDay').addEventListener('click', function() { shiftDate(-1); });
      document.getElementById('plusDay').addEventListener('click', function() { shiftDate(1); });
      document.getElementById('minusMonth').addEventListener('click', function() { shiftMonth(-1); });
      document.getElementById('plusMonth').addEventListener('click', function() { shiftMonth(1); });
      document.getElementById('minusWeek').addEventListener('click', function() { shiftWeek(-1); });
      document.getElementById('plusWeek').addEventListener('click', function() { shiftWeek(1); });
      document.getElementById('today').addEventListener('click', function() { setSelectedDate(new Date()); });
 
      // При смене месяца обновляем дни
      monthSelect.addEventListener('change', function() {
        var year = new Date().getFullYear();
        var month = parseInt(monthSelect.value, 10) - 1;
        fillDaySelect(year, month);
      });
 
      // Инициализация
      fillMonthSelect();
      setSelectedDate(new Date());
    })();
  </script>
 
  <!-- Второй скрипт: заполнение версии, выбор версии и вывод знака -->
  <script>
    (function() {
      var versionSelect = document.getElementById('versionSelect');
      var daySelect = document.getElementById('desiredDay');
      var monthSelect = document.getElementById('desiredMonth');
      var zodiacDiv = document.getElementById('zodiacSign');
 
      // Заполнить селект выбора версии знаков зодиака
      function fillVersionSelect() {
        var versions = [
          {value: 'ru', text: 'Русская версия'},
          {value: 'classic', text: 'Классическая версия'}
        ];
        versionSelect.innerHTML = '';
        versions.forEach(function(v){
          var opt = document.createElement('option');
          opt.value = v.value;
          opt.textContent = v.text;
          versionSelect.appendChild(opt);
        });
      }
 
      var zodiacSignsRu = [
        ["Водолей", "♒", "21 января — 19 февраля", 21],
        ["Рыбы", "♓", "20 февраля — 20 марта", 20],
        ["Овен", "♈", "21 марта — 20 апреля", 21],
        ["Телец", "♉", "21 апреля — 21 мая", 21],
        ["Близнецы", "♊", "22 мая — 21 июня", 22],
        ["Рак", "♋", "22 июня — 22 июля", 22],
        ["Лев", "♌", "23 июля — 22 августа", 23],
        ["Дева", "♍", "23 августа — 23 сентября", 23],
        ["Весы", "♎", "24 сентября — 23 октября", 24],
        ["Скорпион", "♏", "24 октября — 22 ноября", 24],
        ["Стрелец", "♐", "23 ноября — 22 декабря", 23],
        ["Козерог", "♑", "22 декабря — 20 января", 22]
      ];
 
      var zodiacSignsClassic = [
        ["Козерог", "♑", "22 декабря — 19 января", 22],
        ["Водолей", "♒", "20 января — 18 февраля", 20],
        ["Рыбы", "♓", "19 февраля — 20 марта", 19],
        ["Овен", "♈", "21 марта — 19 апреля", 21],
        ["Телец", "♉", "20 апреля — 20 мая", 20],
        ["Близнецы", "♊", "21 мая — 20 июня", 21],
        ["Рак", "♋", "21 июня — 22 июля", 21],
        ["Лев", "♌", "23 июля — 22 августа", 23],
        ["Дева", "♍", "23 августа — 22 сентября", 23],
        ["Весы", "♎", "23 сентября — 22 октября", 23],
        ["Скорпион", "♏", "23 октября — 21 ноября", 23],
        ["Стрелец", "♐", "22 ноября — 21 декабря", 22]
      ];
 
      // Функция определения знака зодиака
      function getZodiac(day, month, signs, isClassic) {
        var index = month - 1;
        if (!isClassic) {
          // Русская версия
          if (day >= signs[index][3]) {
            return signs[index];
          } else {
            var prevIndex = (index + 11) % 12;
            return signs[prevIndex];
          }
        } else {
          // Классическая версия
          var index = month;
          if (day < signs[index][3]) {
            var prevIndex = (index + 11) % 12;
            return signs[prevIndex];
          } else {
            return signs[index];
          }
        }
      }
 
      // Обновить вывод знака зодиака
      function updateZodiacSign() {
        var day = parseInt(daySelect.value, 10);
        var month = parseInt(monthSelect.value, 10);
        if (!day || !month) {
          zodiacDiv.innerHTML = '';
          return;
        }
        var isClassic = versionSelect.value === 'classic';
        var signs = isClassic ? zodiacSignsClassic : zodiacSignsRu;
        var sign = getZodiac(day, month, signs, isClassic);
        var html = '<span class="bBold">' + sign[0] + '</span> ' +
                   '<span class="zodiacGlyph">' + sign[1] + '</span><br>' +
                   '<span class="bNormal">' + sign[2] + '</span>';
        zodiacDiv.innerHTML = html;
      }
 
      // Инициализация
      fillVersionSelect();
 
      // Подписка на события изменения даты и версии
      [daySelect, monthSelect, versionSelect].forEach(function(el) {
        el.addEventListener('change', updateZodiacSign);
      });
 
      // При загрузке страницы инициализируем вывод
      window.addEventListener('load', updateZodiacSign);
    })();
  </script>
 
</body>
</html>
0
Эксперт JSЭксперт HTML/CSS
 Аватар для krvsa
3823 / 1661 / 428
Регистрация: 14.03.2022
Сообщений: 4,168
23.07.2025, 17:16
Цитата Сообщение от бел ка Посмотреть сообщение
надеюсь сейчас всё правильно?
Я не понял, зачем два массива?
Там опять повторяются:
- Название знака.
- Картинка знака.

Собери данные в одну переменную и так чтобы те данные можно было бы использовать как тебе нужно. Зачем этот "копипаст"?

Добавлено через 6 минут
Типа такого, например...

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
const data = [
    {
        name: 'Водолей',
        img: '♒',
        ru: {
            order: 0,
            info: ['21 января — 19 февраля', 21]
        },
        standart: {
            order: 1,
            info: ['22 декабря — 19 января', 22]
        },
    }
]
0
-11 / 6 / 0
Регистрация: 23.02.2023
Сообщений: 431
23.07.2025, 19:32  [ТС]
krvsa,
JavaScript
1
2
3
4
5
6
7
8
9
var zodiacSigns = [
{ 'Водолей', '♒', ru: { 21,},
classic: { 22,}
},
{'Рыбы', '♓', ru: { 20, },
classic: { 19, }
},
// ... остальные знаки
];
так короче массив будет...
0
 Аватар для voraa
1249 / 1158 / 178
Регистрация: 21.01.2024
Сообщений: 5,381
23.07.2025, 20:48
JavaScript
1
2
3
{ 'Водолей', '♒', ru: { 21,},
classic: { 22,}
},
Ну как вы такое писать можете?
Это не знать js от слова совсем
0
Эксперт JSЭксперт HTML/CSS
 Аватар для krvsa
3823 / 1661 / 428
Регистрация: 14.03.2022
Сообщений: 4,168
23.07.2025, 21:19
Цитата Сообщение от бел ка Посмотреть сообщение
так короче массив будет...
Не, я все... (с)
0
-11 / 6 / 0
Регистрация: 23.02.2023
Сообщений: 431
23.07.2025, 22:22  [ТС]
krvsa, вроде работает...

PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
<!DOCTYPE html>
<html lang="ru">
<head>
  <meta charset="UTF-8" />
  <title>Знак зодиака</title>
  <style>
    .bBold { font-weight: bold; }
    .bNormal { font-weight: normal; }
    .zodiacGlyph { font-size: 16px; }
  </style>
</head>
<body>
 
  <div>
    <button id="minusWeek">-7</button>
    <button id="plusWeek">+7</button>
    <br />
    <select id="desiredDay"></select>
    <button id="minusDay">-1</button>
    <button id="plusDay">+1</button>
    <br />
    <select id="desiredMonth"></select>
    <button id="minusMonth">-1</button>
    <button id="plusMonth">+1</button>
    <br />
    <button id="today">Сегодня</button>
  </div>
 
  <div id="zodiacSign"></div><br>
  <select id="versionSelect"></select>
 
  <!-- Первый скрипт: управление выбором даты -->
  <script>
    (function() {
      var daySelect = document.getElementById('desiredDay');
      var monthSelect = document.getElementById('desiredMonth');
 
      // Заполнить селект месяцев
      function fillMonthSelect() {
        var monthsNames = [
          "Январь", "Февраль", "Март", "Апрель", "Май", "Июнь",
          "Июль", "Август", "Сентябрь", "Октябрь", "Ноябрь", "Декабрь"
        ];
        monthSelect.innerHTML = '';
        monthsNames.forEach(function(name, i) {
          var opt = document.createElement('option');
          opt.value = i + 1;
          opt.textContent = name;
          monthSelect.appendChild(opt);
        });
      }
 
      // Кол-во дней в месяце с учётом високосного года
      function daysInMonth(year, month) {
        return new Date(year, month + 1, 0).getDate();
      }
 
      // Заполнить селект дней с учётом месяца
      function fillDaySelect(year, month) {
        var maxDay = daysInMonth(year, month);
        var currentDay = parseInt(daySelect.value, 10);
        daySelect.innerHTML = '';
        for(var i=1; i<=maxDay; i++) {
          var opt = document.createElement('option');
          opt.value = i;
          opt.textContent = i;
          daySelect.appendChild(opt);
        }
        if(currentDay && currentDay <= maxDay) {
          daySelect.value = currentDay;
        } else {
          daySelect.value = 1;
        }
      }
 
      // Получить выбранную дату (год текущий)
      function getSelectedDate() {
        var day = parseInt(daySelect.value, 10);
        var month = parseInt(monthSelect.value, 10);
        var year = new Date().getFullYear();
        return new Date(year, month - 1, day);
      }
 
      // Установить дату в селекты
      function setSelectedDate(date) {
        monthSelect.value = date.getMonth() + 1;
        fillDaySelect(date.getFullYear(), date.getMonth());
        daySelect.value = date.getDate();
 
        // Запустить событие change для обновления вывода знака
        var event = new Event('change');
        monthSelect.dispatchEvent(event);
        daySelect.dispatchEvent(event);
      }
 
      // Сдвиг даты на days дней
      function shiftDate(days) {
        var date = getSelectedDate();
        date.setDate(date.getDate() + days);
        setSelectedDate(date);
      }
 
      // Сдвиг месяца с корректировкой дней
      function shiftMonth(months) {
        var date = getSelectedDate();
        var day = date.getDate();
        date.setDate(1);
        date.setMonth(date.getMonth() + months);
        var maxDay = daysInMonth(date.getFullYear(), date.getMonth());
        date.setDate(Math.min(day, maxDay));
        setSelectedDate(date);
      }
 
      // Сдвиг недели
      function shiftWeek(weeks) {
        shiftDate(7 * weeks);
      }
 
      // Привязка кнопок
      document.getElementById('minusDay').addEventListener('click', function() { shiftDate(-1); });
      document.getElementById('plusDay').addEventListener('click', function() { shiftDate(1); });
      document.getElementById('minusMonth').addEventListener('click', function() { shiftMonth(-1); });
      document.getElementById('plusMonth').addEventListener('click', function() { shiftMonth(1); });
      document.getElementById('minusWeek').addEventListener('click', function() { shiftWeek(-1); });
      document.getElementById('plusWeek').addEventListener('click', function() { shiftWeek(1); });
      document.getElementById('today').addEventListener('click', function() { setSelectedDate(new Date()); });
 
      // При смене месяца обновляем дни
      monthSelect.addEventListener('change', function() {
        var year = new Date().getFullYear();
        var month = parseInt(monthSelect.value, 10) - 1;
        fillDaySelect(year, month);
      });
 
      // Инициализация
      fillMonthSelect();
      setSelectedDate(new Date());
    })();
  </script>
 
  <!-- Второй скрипт: заполнение версии, выбор версии и вывод знака -->
  <script>
    (function() {
      var versionSelect = document.getElementById('versionSelect');
      var daySelect = document.getElementById('desiredDay');
      var monthSelect = document.getElementById('desiredMonth');
      var zodiacDiv = document.getElementById('zodiacSign');
 
      // Заполнить селект выбора версии знаков зодиака
      function fillVersionSelect() {
        var versions = [
          {value: 'ru', text: 'Русская версия'},
          {value: 'classic', text: 'Классическая версия'}
        ];
        versionSelect.innerHTML = '';
        versions.forEach(function(v){
          var opt = document.createElement('option');
          opt.value = v.value;
          opt.textContent = v.text;
          versionSelect.appendChild(opt);
        });
      }
 
      // Укороченный массив знаков зодиака:
      // [название, символ, диапазон ru, старт ru, диапазон classic, старт classic]
      var zodiacSigns = [
        ["Водолей", "♒", "21 января — 19 февраля", 21, "20 января — 18 февраля", 20],
        ["Рыбы", "♓", "20 февраля — 20 марта", 20, "19 февраля — 20 марта", 19],
        ["Овен", "♈", "21 марта — 20 апреля", 21, "21 марта — 19 апреля", 21],
        ["Телец", "♉", "21 апреля — 21 мая", 21, "20 апреля — 20 мая", 20],
        ["Близнецы", "♊", "22 мая — 21 июня", 22, "21 мая — 20 июня", 21],
        ["Рак", "♋", "22 июня — 22 июля", 22, "21 июня — 22 июля", 21],
        ["Лев", "♌", "23 июля — 22 августа", 23, "23 июля — 22 августа", 23],
        ["Дева", "♍", "23 августа — 23 сентября", 23, "23 августа — 22 сентября", 23],
        ["Весы", "♎", "24 сентября — 23 октября", 24, "23 сентября — 22 октября", 23],
        ["Скорпион", "♏", "24 октября — 22 ноября", 24, "23 октября — 21 ноября", 23],
        ["Стрелец", "♐", "23 ноября — 22 декабря", 23, "22 ноября — 21 декабря", 22],
        ["Козерог", "♑", "22 декабря — 20 января", 22, "22 декабря — 19 января", 22],
      ];
 
      // Функция определения знака зодиака по дню, месяцу и версии
      function getZodiac(day, month, signs, version) {
        var index = month - 1;
        var startDayIndex = (version === "ru") ? 3 : 5; // индекс даты начала знака
        var rangeIndex = (version === "ru") ? 2 : 4;    // индекс диапазона дат
 
        if (day >= signs[index][startDayIndex]) {
          return {
            name: signs[index][0],
            symbol: signs[index][1],
            range: signs[index][rangeIndex]
          };
        } else {
          var prevIndex = (index + 11) % 12;
          return {
            name: signs[prevIndex][0],
            symbol: signs[prevIndex][1],
            range: signs[prevIndex][rangeIndex]
          };
        }
      }
 
      // Обновить вывод знака зодиака
      function updateZodiacSign() {
        var day = parseInt(daySelect.value, 10);
        var month = parseInt(monthSelect.value, 10);
        if (!day || !month) {
          zodiacDiv.innerHTML = '';
          return;
        }
        var version = versionSelect.value || 'ru';
        var sign = getZodiac(day, month, zodiacSigns, version);
        var html = '<span class="bBold">' + sign.name + '</span> ' +
                   '<span class="zodiacGlyph">' + sign.symbol + '</span><br>' +
                   '<span class="bNormal">' + sign.range + '</span>';
        zodiacDiv.innerHTML = html;
      }
 
      // Инициализация
      fillVersionSelect();
 
      // Подписка на события изменения даты и версии
      [daySelect, monthSelect, versionSelect].forEach(function(el) {
        el.addEventListener('change', updateZodiacSign);
      });
 
      // При загрузке страницы инициализируем вывод
      window.addEventListener('load', updateZodiacSign);
    })();
  </script>
 
</body>
</html>
0
Эксперт JSЭксперт HTML/CSS
 Аватар для krvsa
3823 / 1661 / 428
Регистрация: 14.03.2022
Сообщений: 4,168
23.07.2025, 22:57
Дилетанту советовать без толку... Он все равно сделает какой-то свой дилетантский вариант.
0
-11 / 6 / 0
Регистрация: 23.02.2023
Сообщений: 431
24.07.2025, 02:35  [ТС]
krvsa, люди ведь придумали буквы, алфавит, почему ты не можешь объяснить почему такой массив лучше, чем лучше?
JavaScript
1
2
3
var zodiacSigns = [
  { name: "Водолей", symbol: "♒", ruRange: "21 января — 19 февраля", ruStart: 21, classicRange: "20 января — 18 февраля", classicStart: 20 },
];
зачем обращаться к значениям по именам, и чем плохо обращаться к значениям по индексам?
0
Эксперт .NET
 Аватар для Usaga
14127 / 9347 / 1350
Регистрация: 21.01.2016
Сообщений: 35,125
24.07.2025, 04:05
Цитата Сообщение от бел ка Посмотреть сообщение
люди ведь придумали буквы, алфавит, почему ты не можешь объяснить почему такой массив лучше, чем лучше?
Ну вот открой любой учебник по JS'у и почитай эти самые буквы из алфавита. Почему ты от человека требуешь, чтобы он против твоей воли в тебя знания вдалбливал, когда тебе самой на это наплевать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.07.2025, 04:05
Помогаю со студенческими работами здесь

знак зодиака
Приветик. Помогите плиз написать сценарий, который по дате рождения человека определяет знак его...

Вывести соответствующий знак зодиака
Пользователь вводит дату рождения в виде строки: день-месяц-год. Ваша задача вывести...

Определить знак зодиака
У меня есть скрипт определяющий знак зодиака(через case of), проблема заключается в том, что у меня...

Как в спан вставить теперешний знак зодиака?
есть &lt;span id=&quot;zodiak&quot;&gt;&lt;/span&gt; как в него вставить какой сейчас знак зодиака, ♊ Близнецы&lt;br&gt;21...

Скрипт, позволяющий в зависимости от введенной даты рождения выводить день недели, в который родился человек, общее коли
Помогите, пожалуйста, реализовать скрипт, позволяющий в зависимости от введенной даты рождения...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru