使用Javascript初始化键值对对象。

3

我见过开发人员声明一个空对象,然后稍后将属性和值分配给它,但我大多数情况下会创建一个对象并初始化属性和值。例如:

const data = {}
data.name = "John Doe";
data.age = 60;

我主要做的是:

const data = {
name: "John Doe",
age: 60
}

我想了解这两者之间的区别以及为什么你会选择其中之一。谢谢


3
结果并没有任何区别。我认为一些使用不同于 JavaScript 的编程语言的人倾向于使用适用于他们所学语言的范例,但这些范例不一定适用于 JavaScript。 - Emiel Zuurbier
1
使用第二个选项(带缩进)- 这样打字量更少,不会重复使用名称“data”,并且可以立即看到对象的结构。 - Bergi
2个回答

2

从技术上讲,如果您立即声明和分配值,则没有太大区别。但是,如果您必须有条件地填充,则第一种选项更好。 不过,您也可以有条件地更新已填充的对象。


1

Javascript中声明对象比其他编程语言更容易。例如,在C#(或Java)中,首先必须声明对象的结构,然后创建该对象的实例。

using System;

namespace Example
{
    public struct Person
    {
        public string Name;
        public int Age;
        public Person(string name, int age)
        {
            Name = name;
            Age = age;
        }
    }

    public class Application
    {
        static void Main()
        {
            Person p1 = new Person("John Doe", 60);
            Console.WriteLine("p1 Name = {0} Age = {1}", p1.Name, p1.Age);
        }
    }
}

在Javascript中,你可以声明对象的结构,也可以不声明。甚至在声明后还可以修改结构,这很惊人(也许不是)。Javascript的这个特性可能会产生很多问题。

所以,没有区别。但如果你声明结构,代码会更加清晰。

欲了解更多信息:


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接