nzakas / understandinges6

Content for the ebook "Understanding ECMAScript 6"
5.45k stars 796 forks source link

Mistake in chapter "Special Cases of the name Property"? #458

Open alexwertand opened 3 years ago

alexwertand commented 3 years ago

Last line of code types in console 'undefined'. In order to know getter's ot setter's name I found decision in MDN.

var doSomething = function doSomethingElse() { // empty }; var person = { get firstName() { return "Nicholas" }, sayName: function() { console.log(this.name); } } console.log(doSomething.name); // "doSomethingElse" console.log(person.sayName.name); // "sayName"

console.log(person.firstName.name); // "get firstName"

https://developer.mozilla.org/enUS/docs/Web/JavaScript/Reference/Global_Objects/Function/name#Function_names_for_getters_and_setters

let o = { get foo() {}, set foo(x){} }; var descriptor = Object.getOwnPropertyDescriptor(o, "foo"); descriptor.get.name; // "get foo" descriptor.set.name; // "set foo";

nzakas commented 3 years ago

Yeah, looks like a mistake. Thanks for the report.