본문으로 바로가기

 

javascript 오브젝트 변수에 접근하는 두가지 방법

 

console.log(value.sales);
console.log(value['sales']);

 

변수가 sales1, sales2, sales3, ... 이런 식으로 존재할 경우, 숫자를 parameter 로 접근하는 방법

 

var idx = 3;

console.log(value.sales + idx); // x
console.log(value['sales' + idx]); // o

 

여러 depth 의 오브젝트 선언하는 두가지 방법

 

var columns = [
	{title: '1월', field: 'month01'},
	{title: '1일',
		columns: [
        	{title: '매출', field: 'date0101', width: 80},
            {title: '원가', field: 'sales0101', width:100}
        ],
    },
    {title: '2일',
		columns: [
        	{title: '매출', field: 'date0201', width: 80},
            {title: '원가', field: 'sales0201', width:100}
        ],
    }
]

// 또는

var calumns = [];

columns[0] = {title: '1월', field: 'month01'};
columns[1] = {title: '1일',
		columns: [
        	{title: '매출', field: 'date0101', width: 80},
            {title: '원가', field: 'sales0101', width:100}
        ],
    };
columns[2] = {title: '2일',
		columns: [
        	{title: '매출', field: 'date0201', width: 80},
            {title: '원가', field: 'sales0201', width:100}
        ],
    };

 

오브젝트에 노드를 추가할 때 주의 사항

 

var columns = [
	{title: '1월', field: 'month01'},
	{title: '2월', field: 'month02'},
    {title: '3월', field: 'month03'}
]

columns[3] = {}; // 이 부분이 없으면 에러 발생
columns[3].title = '4월';
columns[3].field = 'month04';

 

배열 변수를 오브젝트에 추가

 

var arr = new Array();

for (var i = 0; i < 3; i++) {

	arr.push( {title: "매출" + i, field: "sales" + i } );
    
}

var columns = [
	{title: '1일',
		columns: [
        	{title: '매출0', field: 'sales0' },
            {title: '매출1', field: 'sales1' },
            {title: '매출2', field: 'sales2' }
        ],
    },
    {title: '2일',
		columns: [
        	{title: '매출0', field: 'sales0' },
            {title: '매출1', field: 'sales1' },
            {title: '매출2', field: 'sales2' }
        ],
    },
]

columns[2] = {};
columns[2].title = '3일';
columns[2].columns = arr;