Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 17.11.2011, 01:27
Новичок на форуме
Отправить личное сообщение для Alexeich Посмотреть профиль Найти все сообщения от Alexeich
 
Регистрация: 17.11.2011
Сообщений: 2

Может ли свойство объекта быть массивом???
Я недавно начал изучать js. Вот решился сотворить игру морской бой
Собственно проблема:
Хочу создать объект "Ships" с координатами кораблей игрока и компутера. Соответственно c 8-ю свойствами, в каждом по массиву с координатами.
Пытался создать свойства так:
Ships={battllC:coords[]}

И так:
Ships={battllC[]}

И эдак:
for(i=0;i<selectedArea.length;i++){
Ships.batllC[i]=selectedArea[i];
}
А оно никак

Если задавать таким способом:
Ships.battllC=selectedArea

просто передается ссылка на selectedArea, т.е. при изменении selectedArea, меняется и Ships.battllC

Подскажите в чем моя ошибка
Ответить с цитированием
  #2 (permalink)  
Старый 17.11.2011, 01:35
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

Сообщение от Alexeich
Я недавно начал изучать js. Вот решился сотворить игру морской бой
Собственно проблема:
Хочу создать объект "Ships" с координатами кораблей игрока и компутера. Соответственно c 8-ю свойствами, в каждом по массиву с координатами.
Наверное, сначала стоило почитать про ООП в JS.

Сообщение от Alexeich
Пытался создать свойства так:
Ships={battllC:coords[]}

И так:
Ships={battllC[]}

И эдак:
А надо так:
Ships= {battllC: []}
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)
Ответить с цитированием
  #3 (permalink)  
Старый 17.11.2011, 09:32
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,121

Сообщение от Alexeich
Вот решился сотворить игру морской бой
А опыт в программировании вообще есть? А то эта игрушка не для новичков... Я например ей прогеров тестирую. Если смог написать - можно давать самостоятельную работу.
Сообщение от Alexeich
Хочу создать объект "Ships" с координатами кораблей игрока и компутера. Соответственно c 8-ю свойствами, в каждом по массиву с координатами.
Какой-то выверт.
Обычно делается массив кораблей, а не "корабль массивов"...
Ответить с цитированием
  #4 (permalink)  
Старый 17.11.2011, 12:49
Новичок на форуме
Отправить личное сообщение для Alexeich Посмотреть профиль Найти все сообщения от Alexeich
 
Регистрация: 17.11.2011
Сообщений: 2

trikadin
Спасибо огромное
ksa
Параллельно с изучением js пишу игруху, для закрепления материала так сказать.
За 3 дня около 20% уже написал
Цитата:
Какой-то выверт.
Обычно делается массив кораблей, а не "корабль массивов".
А чем такой вариант плох?
ships{
usersDredn:[],
usersBattleC:[],
usersCruiser:[],
usersDestr:[],
aiDredn:[],
aiBattleC:[],
aiCruiser:[],
aiDestr:[]}

И в каждом свойстве получаются координаты данного корабля
Ответить с цитированием
  #5 (permalink)  
Старый 17.11.2011, 13:16
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,121

Сообщение от Alexeich
За 3 дня около 20% уже написал
Как тут ранее говаривалось, самые трудные это последние 20%...
Сообщение от Alexeich
А чем такой вариант плох?
Обычно объекты/классы создаются для множества экземпляров такой структуры.

Например объект "Корабль"... Он имеет какие-то там свойства его характеризующие...
Есть объект "Игрок"... Он имеет определённое количество кораблей.

А утебя получился объект "ИгрокоКорабли". Т.е. это даже стилистически звучит смешно, хоть и название ты ему дал зычное - ships!

В одной книжке когда-то давно прочитал такую фразу:
- Не стремитесь из объекта/класса делать швейцарский нож...
Мне оно понравилось и я его взял на вооружение.

Но на Руси есть так же поговорка - каждый дрочет, как он хочет. Т.ч. смотри сам... Программка твоя, тебе в ней и косячить.
Ответить с цитированием
  #6 (permalink)  
Старый 17.11.2011, 20:26
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

Сообщение от ksa
Обычно делается массив кораблей, а не "корабль массивов"...
Представил себе корабль, гружёный массивами))
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)
Ответить с цитированием
  #7 (permalink)  
Старый 18.11.2011, 17:17
Аватар для Shaci
:-/
Отправить личное сообщение для Shaci Посмотреть профиль Найти все сообщения от Shaci
 
Регистрация: 28.09.2009
Сообщений: 1,126

Сообщение от ksa Посмотреть сообщение
А опыт в программировании вообще есть? А то эта игрушка не для новичков... Я например ей прогеров тестирую. Если смог написать - можно давать самостоятельную работу.

Какой-то выверт.
Обычно делается массив кораблей, а не "корабль массивов"...
сколько морских боев накопилось то наверное)))
Ответить с цитированием
  #8 (permalink)  
Старый 18.11.2011, 19:14
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,121

Сообщение от Shaci
сколько морских боев накопилось то наверное
несколько десятков... И на разных языках...
Ответить с цитированием
  #9 (permalink)  
Старый 18.11.2011, 19:28
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

ksa, круто! Предлагаю создать сайт, посвящённый различным реализациям морского боя))

Сообщение от ksa
Я например ей прогеров тестирую
Искусственный интеллект писать заставляете? Или просто для игры 1x1?
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)
Ответить с цитированием
  #10 (permalink)  
Старый 18.11.2011, 19:34
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,121

Сообщение от trikadin
Искусственный интеллект писать заставляете?
Да он там вовсе простой...

Прошу наисать, что они сами считают по-силам и как они вообще представляют концепцию игры... Т.е. смотрю вообще на все сразу.

Еще мои любимые:
- Спейс патруль
- Охота на лис
А для вовсе освоения языка и работы с БД - телефонный справочник.
Ответить с цитированием
Ответ


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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Свойства объекта, методы и this. Почему свойство вызывается с () ? jsuse Общие вопросы Javascript 2 04.11.2011 20:39
Как удалить свойство объекта? miha-ha Общие вопросы Javascript 2 23.09.2010 15:10
Сколько максимум символов может быть в 1 Cookie? FirstFrost Общие вопросы Javascript 8 18.07.2010 01:26
JSON. Как в callback функции изменить свойство объекта? master_alf jQuery 10 22.04.2010 17:08
Объект как свойство объекта Cooskon Общие вопросы Javascript 6 16.02.2010 21:41