Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как это реализовать на JS (https://javascript.ru/forum/misc/26360-kak-ehto-realizovat-na-js.html)

Bezlyj 06.03.2012 01:30

Как это реализовать на JS
 
Здравствуйте.
В JS коде страницы, использующей ActiveX компонент MS ListView применяется вот такая конструкция:
obj.Subitems(1)='text'

Как это может быть реализовано на JS? Всмысле как реализовать метод Subitems(), который по индексу может возвращать объект, которому можно присвоить значение через '=' ?

DreamTheater 06.03.2012 01:45

У объектов в JS нету никаких индексов, только имена свойств. Индексы есть только у массивов и у массивоподобных объектов. Возможно Вы имеете ввиду вторые?

Bezlyj 06.03.2012 01:57

Возможно. А какие массивоподобные объекты позволяют присвоить значение элементу через ()= ?

Aetae 06.03.2012 02:11

Никакие. () в js - вызов функции и всё, соответственно используя данную конструкцию вы заменяете возвращённое функцией значение, что не имеет никакого смысла.

Bezlyj 06.03.2012 02:19

Вот я тоже не пойму, но это же
obj.Subitems(1)='text'
как то работает?
Эта конструкция присваивает значение элементу коллекции компонента.

Aetae 06.03.2012 02:42

IE.

monolithed 06.03.2012 09:20

Цитата:

Сообщение от Bezlyj
Всмысле как реализовать метод Subitems(), который по индексу может возвращать объект, которому можно присвоить значение через '=' ?

В JS нет работы с ListView.
Однако если вас интересует только представление такой конструкции в JS:
ListView.ListItems(1).SubItems(1) = "text"


то так:
var ListView = {
     ListItems: [[0, 1]]
}

ListView.ListItems[0][0] = 'text';

alert(ListView.ListItems[0][0]);


Часовой пояс GMT +3, время: 15:21.