diff options
Diffstat (limited to 'files/ru/web/javascript/reference/global_objects/function/displayname/index.html')
-rw-r--r-- | files/ru/web/javascript/reference/global_objects/function/displayname/index.html | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/files/ru/web/javascript/reference/global_objects/function/displayname/index.html b/files/ru/web/javascript/reference/global_objects/function/displayname/index.html new file mode 100644 index 0000000000..11bae88221 --- /dev/null +++ b/files/ru/web/javascript/reference/global_objects/function/displayname/index.html @@ -0,0 +1,111 @@ +--- +title: Function.displayName +slug: Web/JavaScript/Reference/Global_Objects/Function/displayName +tags: + - Function + - JavaScript + - Non-standard + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/Function/displayName +--- +<div> + {{JSRef("Global_Objects", "Function")}} {{Non-standard_header}}</div> +<h2 id="Summary" name="Summary">Сводка</h2> +<p>Свойство <code><strong><em>function</em>.displayName</strong></code> возвращает отображаемое имя функции.</p> +<h2 id="Description" name="Description">Описание</h2> +<p>Если оно определено, свойство <code>displayName</code> возвращает отображаемое имя функции:</p> +<pre class="brush: js">function doSomething() {} + +alert(doSomething.displayName); // "undefined" + +var popup = function(content) { alert(content); }; + +popup.displayName = 'Показать всплывающее окно'; + +alert(popup.displayName); // "Показать всплывающее окно" +</pre> +<p>Вы можете определить функцию с отображаемым именем в {{jsxref("Functions_and_function_scope", "выражении функции", "", 1)}}:</p> +<pre class="brush: js">var object = { + someMethod: function() {} +}; + +object.someMethod.displayName = 'someMethod'; + +alert(object.someMethod.displayName); // выведет "someMethod" + +try { someMethod } catch(e) { alert(e); } +// ReferenceError: someMethod is not defined +</pre> +<p>Вы можете динамически изменять свойство <code>displayName</code> функции:</p> +<pre class="brush: js">var object = { + // анонимная функция + someMethod: function(value) { + this.displayName = 'someMethod (' + value + ')'; + } +}; + +alert(object.someMethod.displayName); // "undefined" + +object.someMethod('123') +alert(object.someMethod.displayName); // "someMethod (123)" +</pre> +<h2 id="Examples" name="Examples">Примеры</h2> +<p>Обычно оно используется консолью и профилировщиком, как обёртка над {{jsxref("Function.name", "func.name")}} для отображения имени функции.</p> +<p>Введя следующий пример в консоль, вы должны увидеть что-то вроде "<code>function Моя функция()</code>":</p> +<pre class="brush: js">var a = function() {}; +a.displayName = 'Моя функция'; + +a +</pre> +<h2 id="Specifications" name="Specifications">Спецификации</h2> +<p>Не является частью какой-либо спецификации.</p> +<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<div> + {{CompatibilityTable}}</div> +<div id="compat-desktop"> + <table class="compat-table"> + <tbody> + <tr> + <th>Возможность</th> + <th>Chrome</th> + <th>Firefox (Gecko)</th> + <th>Internet Explorer</th> + <th>Opera</th> + <th>Safari</th> + </tr> + <tr> + <td>Базовая поддержка</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatGeckoDesktop(13)}}</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatUnknown}}</td> + </tr> + </tbody> + </table> +</div> +<div id="compat-mobile"> + <table class="compat-table"> + <tbody> + <tr> + <th>Возможность</th> + <th>Android</th> + <th>Chrome для Android</th> + <th>Firefox Mobile (Gecko)</th> + <th>IE Mobile</th> + <th>Opera Mobile</th> + <th>Safari Mobile</th> + </tr> + <tr> + <td>Базовая поддержка</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatUnknown}}</td> + <td>{{CompatUnknown}}</td> + </tr> + </tbody> + </table> +</div> +<p> </p> |