Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
javascript объекты
|
|||
|---|---|---|---|
|
#18+
AJAX заставил тесно работать с javascript. Часто бывает необходимо посмотреть методы и свойства объекта javascript. Например, след код: Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler); function EndRequestHandler(sender, args) { } в доке не описано, какие методы/свойства есть у args — там только сказано про тип этого параметра. Как узнать?... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2006, 18:10 |
|
||
|
javascript объекты
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, parapet, Вы писали: P>AJAX заставил тесно работать с javascript. Часто бывает необходимо посмотреть методы и свойства объекта javascript. Например, след код: P> P>Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler); P>function EndRequestHandler(sender, args) P>{ P>} P> P>в доке не описано, какие методы/свойства есть у args — там только сказано про тип этого параметра. Как узнать? Попробуйте: Array.prototype.toString = Object.prototype.toString = function() { var cont = []; var addslashes = function(s) { // Использовать replace НЕЛЬЗЯ - в Опере // происходит зацикливание, т.к. из replace // зачем-то вызывается Object.toString(). return s.split('\\').join('\\\\').split('"').join('\\"'); } for (var k in this) { if (cont.length) cont[cont.length-1] += ","; var v = this[k]; var vs = ''; if (v.constructor == String) vs = '"' + addslashes(v) + '"'; else vs = v.toString(); if (this.constructor == Array) cont[cont.length] else cont[cont.length] = k + ": " + vs; } // Здесь тоже нельзя делать replace()! cont = " " + cont.join("\n").split("\n").join("\n "); var s = cont; if (this.constructor == Object) { s = "{\n"+cont+"\n}"; } else if (this.constructor == Array) { s = "[\n"+cont+"\n]"; } return s; } Пример использования: var hash = { color: "red", artefact: "pill", actors: { supplier: "Morp\"heus", consumer: "Neo" }, numbers: [10, 20, 30], slashquote: "with \\ (slash) and \" (quote)" } alert(hash); Взято отсюда... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2006, 11:06 |
|
||
|
javascript объекты
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, Кэр, Вы писали: Кэр>Взято отсюда Пасиб за ссылку! :beer:... << RSDN@Home 1.2.0 alpha rev. 662>> Now playing: «Тихо в лесу…» ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2006, 12:32 |
|
||
|
javascript объекты
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, _FRED_, Вы писали: _FR>Пасиб за ссылку! :beer: На здоровье ;)... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2006, 14:42 |
|
||
|
javascript объекты
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, Кэр, Вы писали: Кэр>Здравствуйте, parapet, Вы писали: P>>AJAX заставил тесно работать с javascript. Часто бывает необходимо посмотреть методы и свойства объекта javascript. Например, след код: P>> P>>Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler); P>>function EndRequestHandler(sender, args) P>>{ P>>} P>> P>>в доке не описано, какие методы/свойства есть у args — там только сказано про тип этого параметра. Как узнать? пример интересный, только морально устаревший ИМХО. уж коль мы говорим про атлас( буду называть так, ajax asp.net как то не звучит :) ) , лучше пользовать штатный JSON Serializer. да и для начального вопроса, автору важна только одна строка: for (var k in this) дальше пользуем инфо о типах которую опять таки атлас дает. я не знаю почему в атласе не сделалим полноценную информацию о типе. с виду это не сложно. если вернуться к начальному примеру, то можно написать: function print (obj) { sb = new Sys.StringBuilder(); sb.append( String.format( "{0}: {1}\n", "root", Object.getType( obj ).getName() ) ); for (var k in obj ) { val = obj[k] ? Object.getType( obj[k] ).getName() : null; sb.append( String.format( "--{0}: {1}\n", k, val ) ); } alert( sb ); } function EndRequestHandler(sender, args) { print ( args ) print ( sender ); } выдаст для сендера например: root: Sys.WebForms.PageRequestManager --_getPageLoadingEventArgs: Function --_getPageLoadedEventArgs: Function --_findNearestElement: Function --_elementContains: Function --dispose: Function --remove_pageLoading: Function --add_pageLoading: Function --remove_pageLoaded: Function --add_pageLoaded: Function --remove_initializeRequest: Function --add_initializeRequest: Function --remove_endRequest: Function --remove_beginRequest: Function --get_isInAsyncPostBack: Function --_form: Sys.UI.DomElement --_updatePanelIDs: Array --_updatePanelClientIDs: Array --_oldUpdatePanelIDs: Array --_childUpdatePanelIDs: Array --_panelsToRefreshIDs: Array --_updatePanelHasChildrenAsTriggers: Array --_asyncPostBackControlIDs: Array --_asyncPostBackControlClientIDs: Array --_postBackControlIDs: Array --_postBackControlClientIDs: Array --_scriptManagerID: String --_pageLoadedHandler: Function --_additionalInput: --_onsubmit: --_onSubmitStatements: Array --_originalDoPostBack: Function --_postBackSettings: Object --_request: --_onFormSubmitHandler: Function --_onFormElementClickHandler: Function --_onWindowUnloadHandler: Function --_asyncPostBackTimeout: Number --_referencedScripts: Array --_scrollPosition: --_dataItems: Object --_response: Sys.Net.XMLHttpExecutor --_processingRequest: --_initializeInternal: Function --_onFormSubmit: Function --_onFormElementClick: Function --_onWindowUnload: Function --_doPostBack: Function --_pageLoadedInitialLoad: Function --_updateControls: Function --_uniqueIDToClientID: Function --_convertToClientIDs: Function --add_endRequest: Function --_get_eventHandlerList: Function --_events: Sys.EventHandlerList --_pageLoaded: Function --add_beginRequest: Function --_getPostBackSettings: Function --_matchesParentIDInList: Function --_createPostBackSettings: Function --_onFormSubmitCompleted: Function --_getScrollPosition: Function --_validPosition: Function --abortPostBack: Function --_decodeString: Function --_splitNodeIntoArray: Function --_updatePanel: Function --_destroyTree: Function --_scriptsLoadComplete: Function --_endPostBack: Function P.S. есть еще интересная штука, Sys.Preview.TypeDescriptor.getTypeDescriptor( someObj ) возвращаемый дескриптор содержит более полную инфо о типе, методы, проперти, атрибуты, но этот объект должен реализовывать Sys.Preview.ITypeDescriptorProvider реально я пока встретил одного такого реализатора — Sys.Preview.Data.DataRow. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2006, 16:05 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=34102036&tid=1387918]: |
0ms |
get settings: |
7ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
63ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 219ms |
| total: | 374ms |

| 0 / 0 |
