Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/475.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,在对通过导入JSON文件创建的JS对象运行某些数据验证方法时,checkDataForExtraKeysvalidation将一个名为“default”的键标记为意外。当对该对象执行console.log时,果然有一个名为“default”的键,其中包含所有JSON内容。下面是一个简单的示例 为什么由JSON数据生成的对象有这个“默认”键?直接在JS文件中创建的对象不会自动添加这样的密钥 是否有办法防止从JSON数据创建的对象添加“default”键?不太熟悉ES6导入,但只是从导入的impor

在对通过导入JSON文件创建的JS对象运行某些数据验证方法时,
checkDataForExtraKeys
validation将一个名为“default”的键标记为意外。当对该对象执行
console.log
时,果然有一个名为“default”的键,其中包含所有JSON内容。下面是一个简单的示例

为什么由JSON数据生成的对象有这个“默认”键?直接在JS文件中创建的对象不会自动添加这样的密钥


是否有办法防止从JSON数据创建的对象添加“default”键?

不太熟悉ES6导入,但只是从导入的
import.“/config.JSON”
似乎正确导入了它(与导入默认导出的语法相同)。我猜,由于ES6模块通常有命名导出或默认导出,当您导入JSON文件(没有显式导出)时,它会以这种方式提供默认导出。是的!这就解决了问题。