{"action":"created","issue":{"url":"https://api.github.com/repos/tc39/proposal-private-fields/issues/14","repository_url":"https://api.github.com/repos/tc39/proposal-private-fields","labels_url":"https://api.github.com/repos/tc39/proposal-private-fields/issues/14/labels{/name}","comments_url":"https://api.github.com/repos/tc39/proposal-private-fields/issues/14/comments","events_url":"https://api.github.com/repos/tc39/proposal-private-fields/issues/14/events","html_url":"https://github.com/tc39/proposal-private-fields/issues/14","id":114516425,"number":14,"title":"Why not use the \"private\" keyword, like Java or C#?","user":{"login":"melanke","id":1337983,"avatar_url":"https://avatars.githubusercontent.com/u/1337983?v=3","gravatar_id":"","url":"https://api.github.com/users/melanke","html_url":"https://github.com/melanke","followers_url":"https://api.github.com/users/melanke/followers","following_url":"https://api.github.com/users/melanke/following{/other_user}","gists_url":"https://api.github.com/users/melanke/gists{/gist_id}","starred_url":"https://api.github.com/users/melanke/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/melanke/subscriptions","organizations_url":"https://api.github.com/users/melanke/orgs","repos_url":"https://api.github.com/users/melanke/repos","events_url":"https://api.github.com/users/melanke/events{/privacy}","received_events_url":"https://api.github.com/users/melanke/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":538,"created_at":"2015-11-02T03:14:48Z","updated_at":"2016-09-15T04:55:36Z","closed_at":null,"body":""},"comment":{"url":"https://api.github.com/repos/tc39/proposal-private-fields/issues/comments/247234753","html_url":"https://github.com/tc39/proposal-private-fields/issues/14#issuecomment-247234753","issue_url":"https://api.github.com/repos/tc39/proposal-private-fields/issues/14","id":247234753,"user":{"login":"yanickrochon","id":78461,"avatar_url":"https://avatars.githubusercontent.com/u/78461?v=3","gravatar_id":"","url":"https://api.github.com/users/yanickrochon","html_url":"https://github.com/yanickrochon","followers_url":"https://api.github.com/users/yanickrochon/followers","following_url":"https://api.github.com/users/yanickrochon/following{/other_user}","gists_url":"https://api.github.com/users/yanickrochon/gists{/gist_id}","starred_url":"https://api.github.com/users/yanickrochon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yanickrochon/subscriptions","organizations_url":"https://api.github.com/users/yanickrochon/orgs","repos_url":"https://api.github.com/users/yanickrochon/repos","events_url":"https://api.github.com/users/yanickrochon/events{/privacy}","received_events_url":"https://api.github.com/users/yanickrochon/received_events","type":"User","site_admin":false},"created_at":"2016-09-15T04:55:36Z","updated_at":"2016-09-15T04:55:36Z","body":"An interesting point, however\r\n\r\n* the `in` operator would return false any `private` field accessed outside of `this` context (not accessible, not there)\r\n* `Object.keys`/`Object.entries`/`Object.values` would filter out restricted fields from the enumeration\r\n* `for..in` would be the same as above\r\n* idem for `Reflect.ownKeys` \r\n* `Object.getOwnPropertyDescriptor`/`Object.getOwnPropertyDescriptor` would return `undefined` for `private` fields outside the proper context\r\n* `Object.getOwnPropertyNames` would act the same as `for..in` and the others\r\n* `Object.getOwnPropertySymbols` is irrelevant"}}
{"actor":{"display_login":"yanickrochon"}}