请问两种YAML映射结构是否等价?技术疑问确认
YAML结构等价性疑问解答
你的理解不正确,这两种YAML结构本质完全不同,转换后的JSON格式也存在明显差异:
第一种YAML结构:映射(字典)
environment: VARIABLE_1: value1 VARIABLE_2: value2
该结构中,environment对应的值是一组键值对映射,转换后的JSON确实如你给出的形式:
{ "environment" : { "VARIABLE_1" : "value1", "VARIABLE_2" : "value2" } }
第二种YAML结构:列表(数组)
environment: - VARIABLE_1=value1 - VARIABLE_2=value2
YAML语法里,-开头的元素属于列表项,因此environment对应的值是一个包含两个字符串的数组,转换后的JSON为:
{ "environment": [ "VARIABLE_1=value1", "VARIABLE_2=value2" ] }
简单总结:只有子项采用key: value格式时,才会被解析为键值对映射;而-开头的元素会被识别为数组元素,不会自动拆分键和值。
内容的提问来源于stack exchange,提问作者user2138149
相关产品推荐
相关产品推荐

