From 33058f2b292b3a581333bdfb21b8f671898c5060 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:40:17 -0500 Subject: initial commit --- .../global_objects/function/displayname/index.html | 90 ++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 files/ja/web/javascript/reference/global_objects/function/displayname/index.html (limited to 'files/ja/web/javascript/reference/global_objects/function/displayname') diff --git a/files/ja/web/javascript/reference/global_objects/function/displayname/index.html b/files/ja/web/javascript/reference/global_objects/function/displayname/index.html new file mode 100644 index 0000000000..d197df7952 --- /dev/null +++ b/files/ja/web/javascript/reference/global_objects/function/displayname/index.html @@ -0,0 +1,90 @@ +--- +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 +--- +
{{JSRef}} {{non-standard_header}}
+ +

function.displayName プロパティは、関数の表示名を返します。

+ +

+ +

displayName の設定

+ +

通常、コンソールやプロファイラーでは関数名を表示するのに {{jsxref("Function.name", "func.name")}} よりも好まれます。

+ +

以下のものをコンソールに入力すると、 "function My Function()" のように表示されます。

+ +
var a = function() {};
+a.displayName = 'My Function';
+
+a; // "function My Function()"
+ +

displayName プロパティが定義されると、関数の表示名が返されます。

+ +
function doSomething() {}
+
+console.log(doSomething.displayName); // "undefined"
+
+var popup = function(content) { console.log(content); };
+
+popup.displayName = 'Show Popup';
+
+console.log(popup.displayName); // "Show Popup"
+
+ +

関数式の displayName の定義

+ +

{{jsxref("Functions_and_function_scope", "関数式", "", 1)}}内で、関数と同時に表示名を定義できます。

+ +
var object = {
+  someMethod: function() {}
+};
+
+object.someMethod.displayName = 'someMethod';
+
+console.log(object.someMethod.displayName); // logs "someMethod"
+
+try { someMethod } catch(e) { console.log(e); }
+// ReferenceError: someMethod is not defined
+
+ +

動的な displayName の変更

+ +

関数の displayName を動的に変更できます。

+ +
var object = {
+  // anonymous
+  someMethod: function(value) {
+    arguments.callee.displayName = 'someMethod (' + value + ')';
+  }
+};
+
+console.log(object.someMethod.displayName); // "undefined"
+
+object.someMethod('123')
+console.log(object.someMethod.displayName); // "someMethod (123)"
+
+ +

仕様書

+ +

どの仕様にも含まれていません。

+ +

ブラウザーの互換性

+ +
+ + +

{{Compat("javascript.builtins.Function.displayName")}}

+
+ +

関連情報

+ + -- cgit v1.2.3-54-g00ecf