Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我可以使用任何字符串作为JSON属性名吗?_Javascript_Json - Fatal编程技术网

Javascript 我可以使用任何字符串作为JSON属性名吗?

Javascript 我可以使用任何字符串作为JSON属性名吗?,javascript,json,Javascript,Json,可以使用任何utf-8字符串作为JSON属性名吗?我的意思是这样可以吗: var personData = { 'Matti Möttönen': { "FirstName": "Matti", "LastName": "Möttönen", }, ... 目前我正在使用Vue.js,数据来自平面文件。是的,您可以: var personData = { 'M

可以使用任何utf-8字符串作为JSON属性名吗?我的意思是这样可以吗:

var personData = {
    'Matti Möttönen': {
        "FirstName": "Matti",
        "LastName": "Möttönen",
    },
...
目前我正在使用Vue.js,数据来自平面文件。

是的,您可以:

var personData = {
    'Matti Möttönen': {
        "FirstName": "Matti",
        "LastName": "Möttönen",
    },
}
甚至

var personData = {
    ['Matti Möttönen']: {
        "FirstName": "Matti",
        "LastName": "Möttönen",
    },
}
你可以称之为

personData['Matti Möttönen']
是的,你可以:

var personData = {
    'Matti Möttönen': {
        "FirstName": "Matti",
        "LastName": "Möttönen",
    },
}
甚至

var personData = {
    ['Matti Möttönen']: {
        "FirstName": "Matti",
        "LastName": "Möttönen",
    },
}
你可以称之为

personData['Matti Möttönen']
如中所述

属性是一个“key:value”对,其中key是一个字符串,也称为“属性名”,值可以是任何值

因此,为了回答您的问题,只要您使用字符串作为键,就应该可以了。

如中所述

属性是一个“key:value”对,其中key是一个字符串,也称为“属性名”,值可以是任何值


因此,要回答您的问题,只要您使用字符串作为键,就应该没问题。

在定义对象时不需要['Matti Möttönen','Matti Möttönen'是完全有效的。@VLAZ感谢您指出这一点,并相应地编辑了我的答案。在定义对象时不需要['Matti Möttönen,“Matti Möttönen”完全正确。@VLAZ谢谢你指出这一点,并据此编辑了我的答案。你能做到吗?对你应该这样做吗?可能不会。它使数据更难访问,而且你在其中有不必要的重复信息。@ceejayoz它比任何其他字符串作为键更难吗?@VLAZ你必须知道这个人的名字才能访问他们的名字。那是。。。不是最优的。@ceejayoz说这个名字作为一个值来自其他地方是相当安全的。用户输入或任何东西。数据也几乎不重复——它将一个名称分解为其组成部分。日本名字的顺序不同。文森特·梵高的姓氏可能是高,也可能是梵高,这取决于他的国籍。@ceejayoz不,你不能从各个部分重建全名。请用{firstName:Yun-Fat,lastName:Chow}和{firstName:John,lastName:Doe}试一下。我对将它们分别转换成周润发和约翰·多伊的算法感兴趣。因为它肯定不是p.firstName++p.lastname你能做到吗?对你应该这样做吗?可能不会。它使数据更难访问,而且你在其中有不必要的重复信息。@ceejayoz它比任何其他字符串作为键更难吗?@VLAZ你必须知道这个人的名字才能访问他们的名字。那是。。。不是最优的。@ceejayoz说这个名字作为一个值来自其他地方是相当安全的。用户输入或任何东西。数据也几乎不重复——它将一个名称分解为其组成部分。日本名字的顺序不同。文森特·梵高的姓氏可能是高,也可能是梵高,这取决于他的国籍。@ceejayoz不,你不能从各个部分重建全名。请用{firstName:Yun-Fat,lastName:Chow}和{firstName:John,lastName:Doe}试一下。我对将它们分别转换成周润发和约翰·多伊的算法感兴趣。因为它肯定不是p.firstName++p.lastName