Я думаю, это то, что вы ищете:
let a = {
users: {
user1: {
name: 'Mina',
interested: ['programming', 'makeup', 'get an answer'],
complexArray: [['test1'], ['test2',{
ultimateTest: ['success', 'more success']
}]]
},
user2: {
name: 'Ernesto',
interested: ['give an answer']
}
}
};
function getContent(element, address) {
let i, j;
let x, y, z;
let length1, length2;
let currentPosition = element;
address = address.split('.');
length1 = address.length;
for (i = 0; i < length1; i++) {
x = address[i].match(/\[\d\]/g);
if (x !== null) {
// ARRAY TYPE ADDRESS
y = address[i].replace(/\[\d\]/g, '');
currentPosition = currentPosition[y];
length2 = x.length;
for (j = 0; j < length2; j++) {
z = x[j].replace(/\D/g, '');
z = parseInt(z);
currentPosition = currentPosition[z];
}
} else {
// OBJECT TYPE ADDRESS
currentPosition = currentPosition[address[i]];
}
}
return (currentPosition);
}
getContent(a, 'users.user1.interested[0]'); // OUTPUT: 'programming'
getContent(a, 'users.user2.name'); // OUTPUT: 'Ernesto'
getContent(a, 'users.user1.complexArray[1][1].ultimateTest[0]'); // OUTPUT: 'success'
getContent(a, 'users.user1.complexArray[1][1].ultimateTest[1]'); // OUTPUT: 'more success'
При установке sdk или разработчика Flex, все исходные файлы установлены локально на компьютере, я верю.
У меня есть разработчик гибкого провода, 3 установленных источника расположены здесь (в зависимости от того, где Вы установили):
Источник для гибкого провода 3 sdk
C:\Program Files\Adobe\Flex Builder 3\sdks\3.0.0\frameworks\projects\framework\src\mx
Источник для гибкого провода 2 sdk
C:\Program Files\Adobe\Flex Builder 3\sdks\2.0.1\frameworks\source\mx
Надежда это помогает и облегчает потребность быть онлайн для просмотра источника...
Источник найден в репозитории SVN, который является здесь: http://opensource.adobe.com/wiki/display/flexsdk/Get+Source+Code
Материал с открытым исходным кодом, кажется, в:
http://opensource.adobe.com/wiki/display/flexsdk/Downloads
Я не знаю, доступно ли все там уже, могут быть проблемы со сторонним материалом.
Вот прямая ссылка на код NumericStepper: http://opensource.adobe.com/svn/opensource/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/NumericStepper.as
И вот полный код платформы: http://opensource.adobe.com/svn/opensource/flex/sdk/trunk/frameworks/projects/framework/src/mx/