| 
 как разпринтить все существующие переменные пробовал сделать так 
function init()
    {
	    for (var k in this)
		{
			alow += '<li>'+k+"=>"+(typeof this[k])+"</li>\n";
		}
		document.write('<ul>'+alow+'</ul>');
    }
к сожалению ничего не вышло пишет предполагаемое наличие объекта пробовал разпринтить переменную document вот так 
function init()
    {
	    for (var k in document)
		{
			alow += '<li>'+k+"=>"+(typeof document[k])+"</li>\n";
		}
		document.write('<ul>'+alow+'</ul>');
    }
в итоге ничего не получилось пишет тоже самое скажите пожалуйста как это сделпть | 
| 
 никак | 
| 
 tenshi, кажется у тебя на все вопросы ответ никак. | 
| 
 scuter, ну все-не все, а вывести содержимое хэша можно. Идея у тебя правильная - пройтись for'ом ... in ... по объекту, выводя ключ и значение по ключу (obj[ключ]) (ну ты вместо значения выводишь тип - не понятно зачем,   ну надо, - значит надо ;)). P.S.: кстати, оба твоих примера рабочие (первый для window, т.к. this в этом случае ссылается на него, во втором - явно - document) - ты просто забыл объявить переменную alow до использования (alow += ...). Просто поставь var allow = ''; в самом начале функции. P.S.[2]: Для дебага можно переписать метод toString в прототипах Object'a и Array'я (как пример - здесь - там в самом низу, листинг 20). | 
| 
 scuter, видимо потому, что ты вечно хочешь невозможного :-) | 
| 
 ds [.code], большое спасибо, я как то не доглядел это дело с alow сейчас попробовал просмотреть "2 уровень в обьектах" но это дело почемуто не выходит, код вот такой 
var alow = '';
document.write('<ul>');
for (var k in this)
{
    if(typeof this[k] == 'object')
    {
    	var termo = '';
    	var ject = eval('this.'+k);
    	document.write('<li>'+k+"=>"+(typeof this[k])+"(<ul>");
    	for (var d in ject)
    	{
    		document.write('<li>'+d+"=>"+(typeof this[k][d])+"</li>\n");
    	}
    	document.write("</ul>)</li>\n");
    }
    else if(typeof this[k] == 'string')
    {
    	document.write('<li>'+k+"=>"+(typeof this[k])+"("+eval('this.'+k)+")</li>\n");
    }
	else
	{
		document.write('<li>'+k+"=>"+(typeof this[k])+"</li>\n");
	}
}
document.write('</ul>');
в IE тормозится где то в external а в FF гдето в document-те интересно почему??? tenshi, как видишь нет ничего невозможного. | 
| 
 Просто для справки: вместо  
eval('this.'+k)
можно писатьthis[k] | 
| 
 Цитата: 
 | 
| 
 scuter, > интересно почему??? слишком глубокие хэши, к тому же некоторые являются рекурентными (в некоторых свойства имеют ссылку на самих себя) - при обычной рекурсивной организации может быть вообще зацикливание | 
| 
 Цитата: 
 | 
| 
 > рекурсивным :) и действительно - рекурсивным. 
var a = {};
a.b = a; // рекурсивный объект
var с = a.b; // можно ли считать рекуррентным вычислением?
var с = a.b.b.b.b; // или даже так - "c" на каждом этапе вычисления зависит от предыдущего
alert(c === a); // и в то же время "с" - рекурсивный объект, полученный рекуррентным вычислением
alert(c.b === a);
 | 
| 
 Цитата: 
 или поправить эту циферку 26 на какую нибуть другую. | 
| Часовой пояс GMT +3, время: 05:38. |