在大多数情况下,get 和 prop 函数返回相同的值。这两个函数之间的区别在于,get 函数并非始终返回可编写脚本的值,而 prop 函数始终返回可编写脚本的值。可编写脚本的值对于每种类型的属性都具有相同的稳定形式。
对于大多数属性,get 和 prop 函数返回相同的值,如 version 属性的以下示例中所示:
> ls
version = 2019.02.28,1-0
> script get('version')
'2019.02.28,1-0'
> script prop('version')
'2019.02.28,1-0'
在 date 属性的以下示例中,请注意 get 函数返回的值与 prop 函数返回的可编写脚本的值之间的差异:
> ls
date = 2019-2-28 10:43:11
> script get('date')
Tue Feb 28 2019 10:43:11 GMT+0000 (UTC) (Date object)
> script prop('date')
'2019-02-28T10:43:11Z'
在 prop 函数调用中包含一个值,以设置已命名属性的值。如果给定的值不是该属性的指定可编写脚本的形式,则会输出错误消息。否则,prop 函数的设置形式不会返回任何值。
> ls
date = 2019-2-28 10:43:11
> script prop('date', '2019-03-09T12:34:56Z')
> ls
date = 2019-3-09 12:34:56
> script prop('date')
'2019-03-09T12:34:56Z'
由于 prop 函数可以用于返回属性值,也可以用于设置属性值,因此 prop 函数无法如 set 函数一样在不指定值的情况下将布尔型属性设置为 true。
以下示例显示了如何使用 set 函数的简短形式将布尔型属性设置为值 true:
set('booleanproperty')
prop 函数的简短形式返回布尔型属性值 true 或 false:
script prop('booleanproperty')
'false'
要使用 prop 函数设置布尔型属性的值,必须提供值:
script prop('booleanproperty', true)
script prop('booleanproperty')
'true'
要为具有 List(列表)修饰符的属性设置可编写脚本的值,必须指定值数组:
> ls
stringlist = a,string,list
> script prop('stringlist', ['a', 'b', 'c', 'd'])
> script prop('stringlist')
['a', 'b', 'c', 'd']
> ls
stringlist = a,b,c,d
要为 List(列表)属性指定单个值,请将单个值指定为大小为一的数组:
> ls
stringlist = a,string,list
> script prop('stringlist', ['a'])
> script prop('stringlist')
['a']
> ls
stringlist = a
要为具有 Empty(空)或 List(列表)修饰符的属性指定空值,请指定空数组:
> ls
emptystringlist = a,string,list
> script prop('emptystringlist', [])
> script prop('emptystringlist')
[]
> ls
emptystringlist =