Javascript 带点符号的ES6符号

Javascript 带点符号的ES6符号,javascript,syntax,ecmascript-6,Javascript,Syntax,Ecmascript 6,在我迄今为止看到的在ES6中使用符号的示例中,您必须使用括号表示法访问对象文字中的符号属性: let mySymbol = Symbol("mySymbol"); let someObject = { [mySymbol]: "someValue" }; console.log(someObject[mySymbol]); // "someValue" 是否有方法使用点符号定义和访问符号属性?否。必须使用括号符号访问符号 点表示法仅用于遵循特定规则模式的字符串键,主要用于作为有效标识符

在我迄今为止看到的在ES6中使用符号的示例中,您必须使用括号表示法访问对象文字中的符号属性:

let mySymbol = Symbol("mySymbol");

let someObject = {
  [mySymbol]: "someValue"
};

console.log(someObject[mySymbol]); // "someValue"

是否有方法使用点符号定义和访问符号属性?

否。必须使用括号符号访问符号

点表示法仅用于遵循特定规则模式的字符串键,主要用于作为有效标识符

符号不是字符串,它们是一个整体,完全是其他东西

Short rational:符号的设计目标之一是它们不能与属性名称冲突,这使得它们可以安全使用

那么,如果你有一个像这样的物体

var = {
  prop1: "Value"
};

您创建了一个名为prop1的符号,如何区分这两个符号,并使用不同的对象符号来访问它们?

否。符号必须使用括号符号来访问

点表示法仅用于遵循特定规则模式的字符串键,主要用于作为有效标识符

符号不是字符串,它们是一个整体,完全是其他东西

Short rational:符号的设计目标之一是它们不能与属性名称冲突,这使得它们可以安全使用

那么,如果你有一个像这样的物体

var = {
  prop1: "Value"
};

您创建了一个名为prop1的符号,如何区分这两个符号,并使用不同的对象表示法来访问它们?

否。点表示法是为解析为属性名称字符串的标识符保留的。由于向后兼容的原因,这一点不会改变。

否。点符号是为解析为属性名字符串的标识符保留的。这不会因为向后兼容的原因而改变