AQL支持原始数据类型和复合数据类型。
原始数据类型:null, bool, number, string (utf-8)
复合数据类型:array, object/document
(1)原始数据类型
数值数据采用64位双精度类型,字符串需要用双引号或者单引号括起来。
(2)复合数据类型
数组类型用[ ]表示,里面每个元素可以是任意的合法表达式,元素可以是不同类型,数组可以嵌套。
数组索引从0开始,也可以使用负索引,表示从结尾开始。这点和Python很像。
对象类型数据由属性组成,每个属性都是一个 name/value对,对象的属性可以通过name访问。
对象数据由{ }表示,包含多个属性声明,属性声明之间用逗号隔开。每个属性都是name/value对,属性名用引号括起来,name/value分别可以用已存在的变量代替。
简写形式如下,
属性值可以是任意形式,对象数据也可以作为属性值。
引用对象属性名时可以用点号,也可以用[]。
,
相对于点号,方括号[]使用更灵活。
当引用的属性不存在时,会返回null,不会报错也不会有警告。