Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #101 (permalink)  
Старый 31.10.2012, 16:36
Профессор
Отправить личное сообщение для tenshi Посмотреть профиль Найти все сообщения от tenshi
 
Регистрация: 20.03.2008
Сообщений: 1,183

> http://www.collection-js.com/manual/part-3.html
> http://www.collection-js.com/manual/part-5.html

я не увидел там ничего про ключи. можешь привести пример, как выбрать всех юзеров старше 18 лет за O(log n)?

>> как это будет выглядеть с использованием сабжа?
> http://www.collection-js.com/manual/part-2.html

приведи код, а не ссылку
__________________
.ня
Ответить с цитированием
  #102 (permalink)  
Старый 31.10.2012, 16:37
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Сообщение от tenshi Посмотреть сообщение
я не увидел там ничего про ключи. можешь привести пример, как выбрать всех юзеров старше 18 лет за O(log n)?
get(название ключа)
__________________
kobezzza
code monkey
Ответить с цитированием
  #103 (permalink)  
Старый 31.10.2012, 16:37
Профессор
Отправить личное сообщение для tenshi Посмотреть профиль Найти все сообщения от tenshi
 
Регистрация: 20.03.2008
Сообщений: 1,183

> // Сгруппировать по отношению старше/младше
> // и выбрать по ключу
> group(':el.age > 18').get('true')
я просил код шаблона. пофиг как делать группировку.
__________________
.ня
Ответить с цитированием
  #104 (permalink)  
Старый 31.10.2012, 16:38
Профессор
Отправить личное сообщение для tenshi Посмотреть профиль Найти все сообщения от tenshi
 
Регистрация: 20.03.2008
Сообщений: 1,183

> get(название ключа)

как создать ключ?
__________________
.ня
Ответить с цитированием
  #105 (permalink)  
Старый 31.10.2012, 16:41
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Сообщение от tenshi Посмотреть сообщение
> get(название ключа)

как создать ключ?
Как хочешь, статически (например ручками указав хеш) или динамически (например через группировку).
__________________
kobezzza
code monkey
Ответить с цитированием
  #106 (permalink)  
Старый 31.10.2012, 17:10
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,021

Сообщение от tenshi
потому что говоришь, что
Не засчитано.

Сообщение от tenshi
но я рад, что они таки решились отделить мух от котлет
Это не единственное и не самое верное решение. Видимо, ты не в курсе про layout-ы. Так что преимущества двухпроходного XSL не раскрыты.

Сообщение от kobezzza
Позволяет
Ну вот, тем более.

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

Сообщение от tenshi
сильно ограниченный xml велосипед
Это голословно.

Сообщение от tenshi
а это не важно где
Как раз-таки важно. XML и JSON ещё куда ни шло, а вот программный код - это уже попахивает диагнозом "говнокодер".
__________________
Болтовня ничего не стоит. Покажите мне код. — Linus Torvalds
влад.куркин.рф
Ответить с цитированием
  #107 (permalink)  
Старый 01.11.2012, 00:15
Профессор
Отправить личное сообщение для tenshi Посмотреть профиль Найти все сообщения от tenshi
 
Регистрация: 20.03.2008
Сообщений: 1,183

> Как хочешь, статически (например ручками указав хеш) или динамически (например через группировку).

зайдём с другого конца..

var c= new Collection([ /* over 9000 */ ])
...
c.add({ name: 'bob', age: 18 })
...
var mature= c.get( ':el.age >= 18' )


что нужно приписать сюда, чтобы выборка в конце происходила за O( log n )
__________________
.ня
Ответить с цитированием
  #108 (permalink)  
Старый 01.11.2012, 00:28
Профессор
Отправить личное сообщение для tenshi Посмотреть профиль Найти все сообщения от tenshi
 
Регистрация: 20.03.2008
Сообщений: 1,183

> Видимо, ты не в курсе про layout-ы.

рассказывай

> Действительно, зачем нужны шаблонизаторы, давайте генерировать разметку программным кодом.

чтобы подставлять значения в шаблоны, очевидно. программно это делать не удобно в ввиду отсутствия нативной поддержки целевого языка, и как следствие необходимости собирать из строк и правильно экранировать подставляемые значения. точно также на xslt не удобно формировать json.

> Это голословно.

рискнёшь доказать полноту по тьюрингу?

> а вот программный код - это уже попахивает диагнозом "говнокодер"

с каких пор програмный код не годится для описания моделей данных?

ты так и не ответил на вопрос:
>> Если Collection позволяет так группировать - будет "как у тебя".
> пример кода?
__________________
.ня

Последний раз редактировалось tenshi, 01.11.2012 в 00:31.
Ответить с цитированием
  #109 (permalink)  
Старый 01.11.2012, 00:58
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Сообщение от tenshi Посмотреть сообщение
зайдём с другого конца..

var c= new Collection([ /* over 9000 */ ])
...
c.add({ name: 'bob', age: 18 })
...
var mature= c.get( ':el.age >= 18' )


что нужно приписать сюда, чтобы выборка в конце происходила за O( log n )
Укажи в конструктор не массив, а хеш, где ключи являются возрастом и будет тебе счастье. А ещё лучше научись читать или перестань употреблять странные таблетки, я тебе уже давал и ссылки, где можно было прочитать и здесь писал.

Из мана на сайте либы:
// Создадим коллекцию, каталог музыкальных иснтрументов:
// первичный уровень таблицы будет хеш-таблицей, где ключ — тип инструмента
var db = new Collection({
	guitar: {
		fender: [
			{model: 'JAGUAR BLACKTOP HH RW BLK', price: 27921},
			{model: 'STRATOCASTER BLACKTOP HH MN BLK', price: 28390},
			{model: 'STANDARD TELECASTER ', price: 18518}
		],
		gibson: [
			{model: 'CUSTOM SHOP LES PAUL CUSTOM EB/GH', price: 159505},
			{model: 'LES PAUL STUDIO FIREBURST CHROME HARDWARE', price: 50525}
		]
	},
	bassGuitar: {
		fender: [
			{model: 'STANDARD JAZZ BASS RW Sunburst', price: 32205},
			{model: 'STANDARD PRECISION BASS', price: 30640}
		]
	}
});

// Теперь выберем все гитары фирмы fender
// для этого сделаем прямой запрос через get
db.get('guitar > fender');

// Выберем модели, дешевле 20-ти тысяч
db.get(':el.price < 20000'); // Ошибка, свойство price не найдено,
                             // Т.к. отсчёт идёт с самого первого объекта, а не с guitar > fender

// Чтобы установить нужную точку отсчёта, установим активный контекст
db.newContext('guitar > fender');

// Теперь снова сделаем get запрос
db.get(':el.price < 20000'); // Всё ок, т.к. теперь задан нужный контекст обхода

// В случае задания в get прямой ссылки, она также будет теперь отталкиваться от активного контекста
db.get('guitar > fender > 0'); // Ошибка
db.get('0'); // Вернёт запрашиваемый элемент


А теперь скажи, раз у тебя такая упер-пупер либа, как ты сделаешь выбор типа LIKE по произвольному полю без переборов?

PS: А вообще я устал с тобой спорить, я знаю такой тип людей, вроде тебя, и знаю что это глупое занятие. Общайся сам с собой, а я буду общаться с адекватными людьми.
__________________
kobezzza
code monkey

Последний раз редактировалось kobezzza, 01.11.2012 в 01:13.
Ответить с цитированием
  #110 (permalink)  
Старый 01.11.2012, 02:27
Профессор
Отправить личное сообщение для tenshi Посмотреть профиль Найти все сообщения от tenshi
 
Регистрация: 20.03.2008
Сообщений: 1,183

> Укажи в конструктор не массив, а хеш, где ключи являются возрастом и будет тебе счастье.

не будет. в качестве домашнего задания предлагаю разобраться почему.

а вот задание на две пятёрки:

var c= new Collection([ /* over 9000 */ ])
...
c.add({ name: 'bob', age: 18 })
...
var mature= c.get( ':el.age >= 18' )
var rich= c.get( ':el.salary >= 9000' )


условия те же - O( log n )

> как ты сделаешь выбор типа LIKE по произвольному полю без переборов?

поисковые системы же это как-то делают
__________________
.ня

Последний раз редактировалось tenshi, 01.11.2012 в 02:30.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Решение проблемы кодировок для AJAX и PHP без iconv (cp1251 в AJAX) Serge Ageyev AJAX и COMET 10 24.04.2013 20:48
Блокирование кнопок управления окном браузера usernew Events/DOM/Window 5 08.12.2009 09:20
Модуль для работы с модулями JSprog Ваши сайты и скрипты 29 02.09.2009 13:31
Возможности JavaScript для управления hardware-объектом AZbest Общие вопросы Javascript 19 28.10.2008 17:45