const adventurer = {
name:'Alice',
cat: {
name:'Dinah'
}
};
const dogName = adventurer.dog?.name;
console.log(dogName);
// expected output: undefined
console.log(adventurer.someNonExistentMethod?.());
index.js
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ
VSCode, 5 рдорд╣реАрдиреЗ рдкрд╣рд▓реЗ
рд╡реАрдПрд╕рд╕реАрдУрдбреА, рдЕрдм
рддреЛ, рджреЛрдиреЛрдВ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ VSCode рд╕реЗ рд╣реИрдВред рд╢реАрд░реНрд╖ рдкрд░ рдПрдХ 5 рдорд╣реАрдиреЗ рдкрд╣рд▓реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдСрдмреНрдЬреЗрдХреНрдЯ рдХреБрдВрдЬрд┐рдпреЛрдВ рдХрд╛ рд░рдВрдЧ рдЧреНрд░реЗ рд╣реИ, рдСрдмреНрдЬреЗрдХреНрдЯ рд╕реНрд╡рдпрдВ рд▓рд╛рд▓ рд░рдВрдЧ рдХрд╛ рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдЙрд╕рдХреЗ рдмрд╛рдж рдбреЙрдЯ рдиреЛрдЯреЗрд╢рди рд╣реЛрддрд╛ рд╣реИред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ #119 рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди "editor.semanticHighlighting.enabled": false
рдХреЛ рд╕реЗрдЯ рдХрд░рдиреЗ рд╕реЗ рдореЗрд░реЗ рд▓рд┐рдП рд╕рдорд╕реНрдпрд╛ рдареАрдХ рдирд╣реАрдВ рд╣реБрдИ, рдФрд░ VSCode рдФрд░ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдЕрдкрдбреЗрдЯ рджреЛрдиреЛрдВ рдХреЗ рдмрд╛рдж рднреА, рд╕рдорд╕реНрдпрд╛ рдЕрднреА рднреА рд╣реЛрддреА рд╣реИред
рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдПрдЯрдо рдореЗрдВ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдбрд╛рд░реНрдХ рд╡рди рдереАрдо рдмрджрд▓ рдЧрдИ рд╣реИ, рдпрд╛ рдЗрд╕рдХрд╛ рдЗрд░рд╛рджрд╛ рдирд╣реАрдВ рд╣реИред
рдирдорд╕реНрддреЗ @AbdelrahmanHafez , рдореБрджреНрджреЗ рдХреЛ рдЦреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬреЛ рдПрдЯрдо рдкрд┐рдЫрд▓реЗ рдХреБрдЫ рд╡рд░реНрд╖реЛрдВ рдореЗрдВ рдмрджрд▓ рдЧрдпрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЗрд╕ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ:
рдореЗрд░рд╛ рд▓рдХреНрд╖реНрдп рд╣рдореЗрд╢рд╛ рдПрдЯрдо рдХреЗ рдЬрд┐рддрдирд╛ рдХрд░реАрдм рд╣реЛ рд╕рдХреЗ рдПрдХ рдЕрдиреБрднрд╡ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рд░рд╣рд╛ рд╣реИред рддреЛ рдПрдХ рджреБрд╖реНрдкрд░рд┐рдгрд╛рдо рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ VSCode 2.2.0 рдореЗрдВ рднреА рдмрджрд▓ рдЧрдпрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдкреБрд░рд╛рдиреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рд╡рд╛рдкрд╕ рд▓рд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд░реАрдбрдореЗ рдореЗрдВ рдмрддрд╛рдП рдЧрдП рд░рдВрдЧреЛрдВ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рдкрд░рд┐рд╡рд░реНрддрди рдХрд╛ рд╕рд╣реА рджрд╛рдпрд░рд╛ рдпрд╣ рд╣реИ:
"editor.tokenColorCustomizations": {
"[Atom One Dark]": {
"textMateRules": [
{
"scope": "meta.object-literal.key.js",
"settings": {
"foreground": "#ABB2BF"
},
}
]
}
}
рдЖрдкрдХреЛ рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдЧреНрд░реЗ рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдП:
рдЕрдиреНрдп рдЕрдВрддрд░, рдЬреИрд╕реЗ console.log
, рдХреЛ рддрднреА рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬрдм рдореИрдВ рдЕрдЧрд▓реА рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ рдирдП semanticHighlighting
рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реВрдВред
рд╢реБрдХреНрд░рд┐рдпрд╛!
рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдЖрдЬ рдЗрд╕ рдкрд░ рдЖрдпрд╛ рдФрд░ "variable.other.object.js"
рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП @akamud рдХреЗ рдКрдкрд░ рдПрдХ рдФрд░ рд╕реБрдЭрд╛рд╡ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛:
"editor.tokenColorCustomizations": {
"[Atom One Dark]": {
"textMateRules": [
{
"scope": "variable.other.object.js",
"settings": {
"foreground": "#E06C75"
},
},
{
"scope": "meta.object-literal.key.js",
"settings": {
"foreground": "#ABB2BF"
},
},
]
}
},
(рд╕рд╣реА рджрд┐рд╢рд╛ рдореЗрдВ рдЗрд╢рд╛рд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, @akamud; рдЗрд╕рдиреЗ рд╕рд╣реА рдЪреАрдЬрд╝ рдХреЛ рдмрджрд▓рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рдмрдирд╛ рджрд┐рдпрд╛ )
@AbdelrahmanHafez @akamud @saurookadook рдмрд╣реБрдд-рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж!
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдЖрдЬ рдЗрд╕ рдкрд░ рдЖрдпрд╛ рдФрд░
"variable.other.object.js"
рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП @akamud рдХреЗ рдКрдкрд░ рдПрдХ рдФрд░ рд╕реБрдЭрд╛рд╡ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛:(рд╕рд╣реА рджрд┐рд╢рд╛ рдореЗрдВ рдЗрд╢рд╛рд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, @akamud; рдЗрд╕рдиреЗ рд╕рд╣реА рдЪреАрдЬрд╝ рдХреЛ рдмрджрд▓рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рдмрдирд╛ рджрд┐рдпрд╛ )