Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   видимость предка в массиве (https://javascript.ru/forum/misc/1555-vidimost-predka-v-massive.html)

scuter 13.08.2008 00:01

видимость предка в массиве
 
предположим что есть такой массив
var massiv = {
	elment:'dfgdfg',
	element2:'lsdkfjsld',
	element3:function()
	{
		//.............
	},
	elsement4:{
		element4_1:'asdfasd',
		element4_2:'sfsdfsdf',
		element4_3:function()
		{
			//...............
		}
	}
};

функция massiv.element3() соответственно видет всё что находится
в массиве massiv и функция massiv.element4.element4_3()
видет всё что находится в массиве massiv.element4 всё это через this
скажите, а сделать так чтобы функция massiv.element4.element4_3() смогла достать данные
из massiv.

Андрей Параничев 13.08.2008 00:11

scuter,
Начнем с того, что это не массив, а объект. И почему просто не обращатся к нему через massiv?

scuter 13.08.2008 19:52

просто дальше этот объект передаётся в несколько других переменных,
а там уже не обратишься к переменной massiv
выглядит это примерно так,
var line_1 = new massiv;
var line_2 = new massiv;
var line_3 = new massiv;
var line_4 = new massiv;

каждая из этих переменных поразному работает,
и поразному используется.

Андрей Параничев 13.08.2008 20:02

scuter,
Прочитайте вот эту статью.
У вас не получится сделать "new" для хеша.
var hash = {
    element: "something"
};

new hash; // TypeError: hash is not a constructor

scuter 13.08.2008 20:16

ну хорошо вот так он не является хешем,
var massiv = function()
{
	this.elment='dfgdfg';
	this.element2='lsdkfjsld';
	this.element3=function()
	{
		//.............
	}
	this.elsement4={
		element4_1:'asdfasd',
		element4_2:'sfsdfsdf',
		element4_3:function()
		{
			//...............
		}
	};
};

var line_1 = new massiv();
var line_2 = new massiv();
var line_3 = new massiv();
var line_4 = new massiv();


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