Symbol.prototype.valueOf()
Baseline
åºãå©ç¨å¯è½
ãã®æ©è½ã¯åºãå®è£ ããã¦ãããå¤ãã®ãã¼ã¸ã§ã³ã®ç«¯æ«ããã©ã¦ã¶ã¼ã§åä½ãã¾ãã2015å¹´9æä»¥éããã¹ã¦ã®ãã©ã¦ã¶ã¼ã§å©ç¨å¯è½ã§ãã
valueOf() 㯠Symbol å¤ã®ã¡ã½ããã§ããã®ã·ã³ãã«å¤ãè¿ãã¾ãã
試ãã¦ã¿ã¾ããã
const symbol = Symbol("foo");
console.log(typeof Object(symbol));
// äºæ³ãããçµæ: "object"
console.log(typeof Object(symbol).valueOf());
// äºæ³ãããçµæ: "symbol"
æ§æ
valueOf()
弿°
ãªãã
è¿å¤
æå®ããã Symbol ãªãã¸ã§ã¯ãã®ããªããã£ãå¤ã§ãã
解説
valueOf() 㯠Symbol ãªãã¸ã§ã¯ãã®ã¡ã½ããã§ã Symbol ãªãã¸ã§ã¯ãã®ããªããã£ãå¤ãã·ã³ãã«ãã¼ã¿åã¨ãã¦è¿ãã¾ãã
JavaScript ã¯ãªãã¸ã§ã¯ããããªããã£ãå¤ã«å¤æããããã« valueOf() ã¡ã½ãããå¼ã³åºãã¾ããvalueOf() ã¡ã½ãããèªåã§å¼ã³åºãå¿
è¦ã¯ã»ã¨ãã©ããã¾ãããJavaScript ã¯ãããªããã£ãå¤ãæå¾
ããã¦ãããªãã¸ã§ã¯ãã«ééããã¨ãã«ãèªåçã«ãããå¼ã³åºãã¾ãã
ä¾
>valueOf() ã®ä½¿ç¨
const sym = Symbol("example");
sym === sym.valueOf(); // true
仿§æ¸
| 仿§æ¸ |
|---|
| ECMAScript® 2027 Language Specification > # sec-symbol.prototype.valueof > |