Как показать пользовательские функции объекта test?
Здравствуйте мне нужно получить пользовательские функции только моего объекта. Мне удалось отобразить функции объекта window. Выборка пользовательской функции происходит через раскрывающий список (select). Я создала еще один объект назвала его test. Теперь мне нужно вывести содержимое этого объекта (функции) в список, потом при выборе любой функции будет отображаться её содержимое. Как это можно сделать?
Вот код который создает список всех пользовательских функции windows и при выборе показывает содержимое функции. function f1(x) { return Math.sqrt(Math.abs(x)); } function f2(x) { return (x<0?-1:(x>0?1:0)); } var arr = 1; //Объект test нужно вывести список функции и при выборе показывать содержимое функций test = function(x,y) { this.x = x; this.y = y; this.getX = function() { return this.x; } this.getY = function() { return this.y; } } t1 = new test(10,20); console.log(t1.getX()); function showFuncs (fName) { //Показать код функции с именем fName document.getElementById('showFunctionId').innerHTML = eval(fName).toString(); } function getAllFuncs (obj) { //Получить массив с именами функций из объекта obj var methods = []; for (var m in obj) { if (typeof obj[m] == "function" && obj.hasOwnProperty(m)) { methods.push (m); } } return methods; } //Загрузить массив опций options в элемент HTML select var options=getAllFuncs(window); var select = document.getElementById("selectFunctionId"); for (var i = 0; i < options.length; i++) { var opt = options[i]; var el = document.createElement("option"); el.textContent = opt; el.value = opt; select.appendChild (el); } Код:
<!DOCTYPE html> |
Часовой пояс GMT +3, время: 04:32. |