有什么理由在访问对象的属性时使用 .propertyName 来访问属性而不是 [ "propertyName" ]?



>假设我有一个这样的对象数组:

function obj (name) {
    this.name = name
}
let x = {
    'foo': new obj('foo');
    'bar': new obj('bar');
}

使用x['foo'].namex['foo']['name]有优势吗?

我认识到,在向对象添加内容或使用for循环访问对象时,[]符号更加通用,那么除了易用性之外,还有什么理由选择使用 . 访问它?它是否提供了速度提升或只是为了可读性?

x.y通常是首选,因为它编写速度更快/使用起来更好。

x["y"] 对于晦涩的键(如"D-2"、"1.2"或其他非 ASCII 字符(很有用。

在第一种情况下,你不能做 x.d-2,因为这会变得x.d - 2(完全不同的(。

相关内容

最新更新