понятно, что не надо расширять базовый тип. НО, когда я отправляю в консоль {} она печатает Object:
Цитата:
|
Object
Object
__defineGetter__ Function
__defineSetter__ Function
__lookupGetter__ Function
__lookupSetter__ Function
constructor Function
hasOwnProperty Function
isPrototypeOf Function
k_string Function
propertyIsEnumerable Function
toLocaleString Function
toString Function
valueOf Function
|
это, вкупе с тем фактом, что класс Hash не существует, см.
коммент
навело меня на мысль что хеш и есть Object. если Вы обладаете сакральным знанием о том, какой объект надо расширить, чтоб добавить метод в хеш, то тут самое место им поделиться. отмечу, что я об этом повторно спрашивал и ответа не получил (в гугле тоже искал).
Сообщение от monolithed
|
Вот моя реализация функция print_r() вероятно она вам нужна
|
нет, мне нужна функция, которая делает строго это:
Цитата:
|
{a:1, b:2, s:3}.k_string() => 'a=1 b=2 c=3'
|
и более того, хотелось бы сделать ее методом хеша и так, чтоб элемент хеша с одноименным ключом не делал бы этот метод (равно как и любой другой) недоступным. (с самой функцией, собственно, проблем нет.)
похоже, что это невозможно, поскольку выяснилось, что добавление в хеш элемента с ключом одноименным функции делает эту функцию недоступной.
понятно излагаю? есть возражения? буду рад услышать.
в особенности буду рад услышать, как же все-таки называется класс, который следует расширять вместо базового.