自適性表達式預先建置的函式
適用於: SDK v4
本文列出依其一般用途排序的可用預建函式。 如需預建函式和表達式語法中使用的運算符相關信息,請參閱 運算符。
預先建置的運算式分成下列函式類型:
您也可以依 字母順序檢視清單。
字串函數
函式 | 說明 |
---|---|
length | 傳回字串的長度。 |
replace | 以指定的字串取代子字串,並傳回更新的字串。 此函式會區分大小寫。 |
replaceIgnoreCase | 使用指定字串取代子字串,並傳回已更新的字串。 此函式不區分大小寫。 |
split | 根據指定的分隔符傳回包含子字串的陣列。 |
substring | 傳回字串中的字元。 |
toLower | 以選擇性地區設定格式傳回小寫的字串。 |
toUpper | 以選擇性的地區設定格式傳回大寫的字串。 |
修剪 | 從字串中移除開頭和尾端空格符。 |
addOrdinal | 傳回輸入編號的序數。 |
endsWith | 檢查字串是否以特定的子字串結束。 true 如果找到子字串,則傳回 ;如果找不到,則傳回 false 。 此函式不區分大小寫。 |
startsWith | 檢查字串是否以特定的子字串開始。 true 如果找到子字串,則傳回 ;如果找不到,則傳回 false 。 此函式不區分大小寫。 |
countWord | 傳回指定字串中的字數。 |
concat | 結合兩個或多個字串,並傳回產生的字串。 |
newGuid | 傳回新的 Guid 字串。 |
indexOf | 傳回子字串 的起始位置或索引值,或 搜尋指定的物件,並傳回整個清單中第一次出現之以零起始的索引。 此函式不區分大小寫,而索引開頭為數位0。 |
lastIndexOf | 傳回子字串 最後一次出現的起始位置或索引值,或 搜尋指定的物件,並傳回清單中專案範圍內最後一次出現的以零起始的索引。此函式不區分大小寫,而索引開頭為數位0。 |
sentenceCase | 以選擇性的本機格式將字串中第一個單字的第一個字母大寫。 |
titleCase | 以選擇性地區設定格式將每個單字的第一個字母大寫。 |
reverse | 反轉字串或陣列中的項目順序。 |
集合函數
函式 | 說明 |
---|---|
contains | 可以尋找字串中的項目、尋找數位中的專案,或尋找複雜物件中的參數。 範例: contains('hello world', 'hello') contains(createArray('1','2'), '1') contains(json(“{'foo':'bar'}”),'foo') |
first | 從集合傳回第一個專案。 |
join | 傳回具有陣列中所有項目的字串,並以「分隔符號」將每個字元隔開。 範例: join(createArray('a','b'), '.') = “a.b” |
last | 傳回集合中的最後一個專案。 |
計數 | 傳回集合中的項目數。 |
foreach | 在每個專案上操作,並傳回新的集合。 |
union | 傳回具有指定集合中「所有」項目的集合。 |
skip | 從集合前面移除專案,並傳回其餘專案。 |
take | 傳回集合中的前端項目。 |
intersection | 在指定的多個集合中,傳回「只有」共同項目的集合。 |
subArray | 從指定的開始和結束位置傳回子陣列。 索引值會以數字 0 開頭。 |
select | 在每個元素上操作,並傳回已轉換專案的新集合。 |
where | 篩選每個元素,並傳回符合特定條件之篩選專案的新集合。 |
sortBy | 以遞增順序排序集合中的專案,並傳回已排序的集合。 |
sortByDescending | 以遞減順序排序集合中的專案,並傳回已排序的集合。 |
indicesAndValues | 將陣列或物件轉換成具有index和 value 屬性的物件陣列。 |
flatten | 將陣列扁平化為具有非數位值的陣列。 |
unique | 從陣列中移除所有重複專案。 |
any | 判斷序列的任何專案是否符合條件。 |
全部 | 判斷序列的所有專案是否符合條件。 |
reverse | 反轉字串或陣列中的項目順序。 |
合併 | 將陣列中的多個 JSON 物件或項目合併在一起。 |
邏輯比較函數
函式 | 說明 |
---|---|
and | 邏輯和。 如果所有指定的表達式評估為 true,則傳回 true。 |
equals | 比較相等。 如果指定的值相等,則傳回 true。 |
empty | 檢查目標是否為空白。 |
greater | 大於的比較。 如果第一個值更多,則傳 true 回 ;如果小於則傳回 false 。 |
greaterOrEquals | 大於或等於的比較。 true 如果第一個值大於或等於,則傳回 ;如果第一個值小於,則傳回 false 。 |
if | 檢查運算式是 True 或 False。 根據結果,傳回指定的值。 |
less | 比較小於作業。 true 如果第一個值較少,則傳回 ;如果第一個值更多,則傳回 false 。 |
lessOrEquals | 比較小於或等於作業。 true 如果第一個值小於或等於,則傳回 ;如果第一個值更多,則傳回 false 。 |
not | 邏輯 not 運算子。 true 如果表示式為 false,則傳回 ;如果為 true,則傳回 false 。 |
or | 邏輯或作業。 如果至少有一個運算式為 true,則傳 true 回 ;如果全部為 false,則傳回 false 。 |
exists | 評估表達式的真實性。 |
轉換函數
函式 | 說明 |
---|---|
float | 傳回指定字串的浮點表示。 |
int | 傳回指定字串的整數表示。 |
string | 以選擇性的地區設定格式傳回指定值的字串版本。 |
bool | 傳回指定字串的布爾值表示。 |
createArray | 從多個輸入建立陣列。 |
json | 傳回字串或 XML 的 JavaScript 物件表示法 (JSON) 類型值或物件。 |
base64 | 傳回字串或位元組數位的base64編碼版本。 |
base64ToBinary | 傳回 base64 編碼字串的二進位版本。 |
base64ToString | 傳回base64編碼字串的字串版本。 |
binary | 傳回輸入值的二進位版本。 |
dataUri | 傳回輸入值的 URI。 |
dataUriToBinary | 傳回數據 URI 的二進位版本。 |
dataUriToString | 傳回數據 URI 的字串版本。 |
uriComponent | 藉由以逸出字元取代 URL 中的 Unsafe 字元,傳回輸入值的 URI 編碼版本。 |
uriComponentToString | 傳回 URI 編碼字串的字串版本。 |
xml | 傳回字串的 XML 版本。 |
formatNumber | 將值格式化為最接近的數位到指定的小數位數,以及選擇性的指定地區設定。 |
jsonStringify | 傳回值的 JSON 字串。 |
stringOrValue Wrap 字串插補以取得實際值。 例如, stringOrValue('${1}') 傳回數位 1,同時 stringOrValue('${1} item') 傳回字串 「1 item」。 |
數學函數
函式 | 說明 |
---|---|
abs | 傳回指定數字的絕對值。 |
add | 數學和。 傳回兩個數位(純數位大小寫)或串連兩個或多個字串的結果。 |
div | 數學除法。 傳回兩數相除的整數結果。 |
max | 從集合傳回最大值。 |
min | 從集合傳回最小值。 |
mod | 傳回兩數相除的餘數。 |
mul | 數學乘法。 傳回將兩數相乘的乘積。 |
rand | 傳回指定最小值和最大值之間的隨機數。 |
sqrt | 傳回指定數位的平方根。 |
sub | 數學減法。 傳回第一個數字減去第二個數字的結果。 |
sum | 傳回數位中數位的總和。 |
range | 傳回從指定整數開始的整數陣列。 |
exp | 將一個數字的指數傳回另一個數位。 |
平均 | 傳回數值陣列的平均數目。 |
floor | 傳回小於或等於指定數位的最大整數值。 |
ceiling | 傳回大於或等於指定數位的最小整數值。 |
round | 將值四捨五入為最接近的整數或指定的小數位數。 |
日期和時間函式
函式 | 說明 |
---|---|
addDays | 以選擇性的地區設定格式,將指定的天數新增至指定的時間戳。 |
addHours | 以選擇性的地區設定格式,將指定的時數新增至指定的時間戳。 |
addMinutes | 以選擇性的地區設定格式,將指定的分鐘數新增至指定的時間戳。 |
addSeconds | 將指定的秒數新增至指定的時間戳。 |
dayOfMonth | 傳回指定時間戳或 Timex 表達式的月份日期。 |
dayOfWeek | 傳回指定時間戳的星期幾。 |
dayOfYear | 傳回指定時間戳的年份日期。 |
formatDateTime | 以選擇性的地區設定格式傳回時間戳。 |
formatEpoch | 從 UNIX Epoch 時間(Unix 時間、POSIX 時間)傳回選擇性地區設定格式的時間戳。 |
formatTicks | 從刻度傳回選擇性地區設定格式的時間戳。 |
subtractFromTime | 以選擇性的地區設定格式,從時間戳減去一些時間單位。 |
utcNow | 以選擇性的地區設定格式傳回目前的時間戳做為字串。 |
dateReadBack | 使用日期時間連結庫來提供日期回寫。 |
month | 傳回指定時間戳的月份。 |
date | 傳回指定時間戳的日期。 |
year | 傳回指定時間戳的年份。 |
getTimeOfDay | 傳回指定時間戳的一天時間。 |
getFutureTime | 傳回選擇性地區設定格式加上指定時間單位的目前時間戳。 |
getPastTime | 傳回選擇性地區設定格式的目前時間戳減去指定的時間單位。 |
addToTime | 以選擇性的地區設定格式,將時間單位數新增至時間戳。 |
convertFromUTC | 從通用時間國際標準 (UTC) 轉換選擇性地區設定格式的時間戳。 |
convertToUTC | 將選擇性地區設定格式的時間戳轉換為通用時間國際標準時間(UTC)。 |
startOfDay | 以選擇性地區設定格式傳回時間戳的開始時間。 |
startOfHour | 以選擇性地區設定格式傳回時間戳的小時開始時間。 |
startOfMonth | 以選擇性地區設定格式傳回時間戳的月份開始。 |
ticks | 傳回指定時間戳的刻度屬性值。 |
ticksToDays | 將刻度屬性值轉換為天數。 |
ticksToHours | 將刻度屬性值轉換為時數。 |
ticksToMinutes | 將刻度屬性值轉換為分鐘數。 |
dateTimeDiff | 傳回兩個時間戳之間的刻度差異。 |
getPreviousViableDate | 根據目前日期和選擇性指定的時區,傳回 Timex 表達式的先前可行日期。 |
getNextViableDate | 根據目前日期和選擇性指定的時區,傳回 Timex 表達式的下一個可行日期。 |
getPreviousViableTime | 根據目前時間和選擇性指定的時區,傳回 Timex 表達式的先前可行時間。 |
getNextViableTime | 根據目前時間和選擇性指定的時區,傳回 Timex 表達式的下一個可行時間。 |
Timex 函式
函式 | 說明 |
---|---|
isPresent | 如果 TimexProperty 或 Timex 運算式參考目前,則傳回 true。 |
isDuration | 如果 TimexProperty 或 Timex 運算式參考持續時間,則傳回 true。 |
isTime | 如果 TimexProperty 或 Timex 運算式參考時間,則傳回 true。 |
isDate | 如果 TimexProperty 或 Timex 運算式參考日期,則傳回 true。 |
isTimeRange | 如果 TimexProperty 或 Timex 運算式參考時間範圍,則傳回 true。 |
isDateRange | 如果 TimexProperty 或 Timex 運算式參考日期範圍,則傳回 true。 |
isDefinite | 如果 TimexProperty 或 Timex 運算式參照到明確的日期,則傳回 true。 |
解決 | 如果指定 TimexProperty 或 Timex 運算式參考有效的時間,則傳回字串。 有效時間包含小時、分鐘和秒。 |
URI 剖析函數
函式 | 說明 |
---|---|
uriHost | 傳回統一資源標識碼 (URI) 的主機值。 |
uriPath | 傳回統一資源標識碼的路徑值(URI)。 |
uriPathAndQuery | 傳回統一資源標識碼的路徑和查詢值(URI)。 |
uriPort | 傳回統一資源標識碼 (URI) 的埠值。 |
uriQuery | 重新調整統一資源識別碼 (URI) 的查詢值。 |
uriScheme | 傳回統一資源標識碼的配置值(URI)。 |
物件操作和建構函式
函式 | 說明 |
---|---|
addProperty | 將屬性及其值或名稱/值組新增至 JSON 物件,並傳回更新的物件。 |
removeProperty | 從 JSON 物件中移除屬性,並傳回更新的物件。 |
setProperty | 設定 JSON 物件的 屬性值,並傳回更新的物件。 |
getProperty | 從 JSON 物件傳回指定之屬性或根屬性的值。 |
coalesce | 從一個或多個參數中傳回第一個非 Null 值。 |
xPath | 檢查 XML 中是否有符合 XPath (XML 路徑語言) 運算式的節點或值,並傳回符合的節點或值。 |
jPath | 檢查 JSON 或 JSON 字串中是否有符合路徑表達式的節點或值,並傳回相符的節點。 |
setPathToValue | 設定特定路徑的值,並傳回值。 |
正則表達式函式
函式 | 說明 |
---|---|
isMatch | 如果字串符合一般 regex 模式,則傳回 true。 |
類型檢查函數
函式 | 說明 |
---|---|
EOL | 傳回行尾 (EOL) 序列文字。 |
isInteger | 如果指定的輸入是整數數,則傳回 true |
isFloat | 如果指定的輸入是浮點數,則傳回 true |
isBoolean | 如果指定的輸入是布爾值,則傳回 true。 |
isArray | 如果指定的輸入是陣列,則傳回 true。 |
isObject | 如果指定的輸入是 物件,則傳回 true。 |
isDateTime | 如果指定的輸入為UTC ISO格式時間戳,則傳回 true。 |
isString | 如果指定的輸入是字串,則傳回 true。 |
預先建置的函式會依字母順序排序
abs
傳回指定數字的絕對值。
abs(<number>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<number> | Yes | 數值 | 要取得絕對值的數位 |
傳回值 | 類型 | 描述 |
---|---|---|
<result> | 數值 | 計算絕對值的結果。 |
範例
這些範例會計算絕對值:
abs(3.12134)
abs(-3.12134)
兩者都會傳回結果 3.12134。
add
傳回新增兩個或多個數位(純數位大小寫)或串連兩個或多個字元串的結果(其他大小寫)。
add(<item1>, <item2>, ...)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<item1>、 <item2>,... | Yes | 任意 | 項目 |
傳回值 | 類型 | 描述 |
---|---|---|
<result-sum> | number 或 string | 加入指定數位或 concat 結果的結果。 |
範例
此範例會相加指定的數字:
add(1, 1.5)
並傳回結果 2.5。
此範例會串連指定的專案:
add('hello',null)
add('hello','world')
並傳回結果
- 你好
- helloworld
addDays
以選擇性的地區設定格式,將天數新增至時間戳。
addDays('<timestamp>', <days>, '<format>'?, '<locale>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 包含時間戳的字串,其必須是標準 UTC ISO 格式 YYYY-MM-DDTHH:mm:ss.fffZ |
<days> | Yes | 整數 | 要加入的天數 (正數或負數) |
<format> | No | 字串 | 自訂格式模式。 時間戳的預設格式為 UTC ISO 格式 YYYY-MM-DDTHH:mm:ss.fffZ,符合 ISO 8601。 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
<updated-timestamp> | 字串 | 時間戳記加上指定的天數 |
範例 1
此範例會將 10 天新增至指定的時間戳:
addDays('2018-03-15T13:00:00.000Z', 10)
並傳回結果 2018-03-25T00:00:00.000Z。
範例 2
此範例會從指定的時間戳記中減去五天:
addDays('2018-03-15T00:00:00.000Z', -5)
並傳回結果 2018-03-10T00:00:00.000Z。
範例 3
本範例會在 de-DE 地區設定中將 1 天新增至指定的時間戳:
addDays('2018-03-15T13:00:00.000Z', 1, '', 'de-dE')
並傳回結果 16.03.18 13:00:00。
addHours
以選擇性的地區設定格式,將小時數新增至時間戳。
addHours('<timestamp>', <hours>, '<format>'?, '<locale>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 包含時間戳記的字串 |
<hours> | Yes | 整數 | 要加入的時數 (正數或負數) |
<format> | No | 字串 | 自訂格式模式。 時間戳的預設格式為 UTC ISO 格式 YYYY-MM-DDTHH:mm:ss.fffZ,符合 ISO 8601。 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
<updated-timestamp> | 字串 | 時間戳記加上指定的時數 |
範例 1
此範例會將 10 小時新增至指定的時間戳:
addHours('2018-03-15T00:00:00.000Z', 10)
並傳回結果 2018-03-15T10:00:00.000Z。
範例 2
此範例會從指定的時間戳記中減去五小時:
addHours('2018-03-15T15:00:00.000Z', -5)
並傳回結果 2018-03-15T10:00:00.000Z。
範例 3
本範例會在 de-DE 地區設定中將 2 小時新增至指定的時間戳:
addHours('2018-03-15T13:00:00.000Z', 2, '', 'de-DE')
並傳回結果 15.03.18 15:00:00。
addMinutes
以選擇性的地區設定格式,將分鐘數新增至時間戳。
addMinutes('<timestamp>', <minutes>, '<format>'?, '<locale>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 包含時間戳記的字串 |
<分鐘> | Yes | 整數 | 要加入的分鐘數 (正數或負數) |
<format> | No | 字串 | 自訂格式模式。 時間戳的預設格式為 UTC ISO 格式 YYYY-MM-DDTHH:mm:ss.fffZ,符合 ISO 8601。 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
<updated-timestamp> | 字串 | 時間戳記加上指定的分鐘數 |
範例 1
此範例會將 10 分鐘新增至指定的時間戳:
addMinutes('2018-03-15T00:10:00.000Z', 10)
並傳回結果 2018-03-15T00:20:00.000Z。
範例 2
此範例會從指定的時間戳記中減去五分鐘:
addMinutes('2018-03-15T00:20:00.000Z', -5)
並傳回結果 2018-03-15T00:15:00.000Z。
範例 3
本範例會在 de-DE 地區設定中將 30 分鐘新增至指定的時間戳:
addMinutes('2018-03-15T00:00:00.000Z', 30, '', 'de-DE')
並傳回結果 15.03.18 13:30:00。
addOrdinal
傳回輸入編號的序數。
addOrdinal(<number>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<number> | Yes | 整數 | 要轉換成序數的數位 |
傳回值 | 類型 | 描述 |
---|---|---|
<result> | 字串 | 從輸入編號轉換的序數 |
範例
addOrdinal(11)
addOrdinal(12)
addOrdinal(13)
addOrdinal(21)
addOrdinal(22)
addOrdinal(23)
並分別傳回下列結果:
- 第 11
- 第12個
- 第 13
- 第 21 個
- 第 22
- 第 23
addProperty
將屬性及其值或名稱/值組新增至 JSON 物件,並傳回更新的物件。 如果物件已存在於運行時間,函式會擲回錯誤。
addProperty('<object>', '<property>', value)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<object> | Yes | object | 您要在其中新增屬性的 JSON 物件 |
<property> | Yes | 字串 | 要加入的屬性名稱 |
<value> | Yes | 任意 | 屬性的值 |
傳回值 | 類型 | 描述 |
---|---|---|
<updated-object> | object | 新增屬性之後更新的 JSON 物件 |
範例
此範例會將 accountNumber 屬性新增至 customerProfile 物件,該物件會使用 json() 函式轉換成 JSON。 函式會指派 newGuid() 函式所產生的值,並傳回更新的物件:
addProperty(json('customerProfile'), 'accountNumber', newGuid())
addSeconds
將秒數加入時間戳記。
addSeconds('<timestamp>', <seconds>, '<format>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 包含時間戳記的字串 |
<seconds> | Yes | 整數 | 要加入的秒數 (正數或負數) |
<format> | No | 字串 | 自訂格式模式。 時間戳的預設格式為 UTC ISO 格式 YYYY-MM-DDTHH:mm:ss.fffZ,符合 ISO 8601。 |
傳回值 | 類型 | 描述 |
---|---|---|
<updated-timestamp> | 字串 | 時間戳記加上指定的秒數 |
範例 1
此範例會在指定的時間戳記中加上 10 秒鐘:
addSeconds('2018-03-15T00:00:00.000Z', 10)
並傳回結果 2018-03-15T00:00:10.000Z。
範例 2
此範例會在指定的時間戳記中減去 5 秒鐘:
addSeconds('2018-03-15T00:00:30.000Z', -5)
並傳回結果 2018-03-15T00:00:25.000Z。
addToTime
以選擇性的地區設定格式,將時間單位數新增至時間戳。 另請參閱 getFutureTime()。
addToTime('<timestamp>', '<interval>', <timeUnit>, '<format>'?, '<locale>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 包含時間戳記的字串 |
<interval> | Yes | 整數 | 要加入的指定時間單位數字 |
<timeUnit> | Yes | 字串 | 要搭配 間隔使用的時間單位。 可能的單位為 “Second”、“Minute”、“Hour”、“Day”、“Week”、“Month” 和 “Year”。 |
<format> | No | 字串 | 自訂格式模式。 時間戳的預設格式為 UTC ISO 格式 YYYY-MM-DDTHH:mm:ss.fffZ,符合 ISO 8601。 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
<updated-timestamp> | 字串 | 時間戳加上指定格式的指定時間單位數目。 |
範例 1
本範例會將一天新增至指定的時間戳。
addToTime('2018-01-01T00:00:00.000Z', 1, 'Day')
並傳回結果 2018-01-02T00:00:00.000Z。
範例 2
本範例會將兩周新增至指定的時間戳。
addToTime('2018-01-01T00:00:00.000Z', 2, 'Week', 'MM-DD-YY')
並將 『MM-DD-YY』 格式的結果傳回為 01-15-18。
全部
判斷序列的所有專案是否符合條件。
all(<sequence>, <item>, <condition>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<序列> | Yes | object | 要評估的序列。 |
<專案> | Yes | 字串 | 參考序列中要評估的專案。 |
<condition> | Yes | expression | 要評估條件的表達式。 |
傳回值 | 類型 | 描述 |
---|---|---|
[True] 或 [False] | 布林值 | 如果所有元素都滿足條件,則傳回 true 。 如果至少有未傳回 ,則傳回 false 。 |
範例
這些範例會判斷序列的所有元素是否符合條件:
all(createArray(1, 'cool'), item, isInteger(item))
all(createArray(1, 2), item => isInteger(item))
並分別傳回下列結果:
- false,因為序列中的兩個專案不是整數。
- true,因為序列中的兩個專案都是整數。
及
檢查是否所有運算式都是 True。 true
如果所有表示式都是 true,則傳回 ;如果至少有一個運算式為 false,則傳回 false
。
and(<expression1>, <expression2>, ...)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<expression1>, <expression2>, ... | Yes | 布林值 | 要檢查的運算式 |
傳回值 | 類型 | 描述 |
---|---|---|
[True] 或 [False] | 布林值 | 如果所有表示式都是 true,則傳回 true 。 如果至少有一個表示式為 false,則傳回 false 。 |
範例 1
這些範例會檢查指定的布爾值是否全部為 true:
and(true, true)
and(false, true)
and(false, false)
並分別傳回下列結果:
- 這兩個運算式都是 true,因此函式會傳
true
回 。 - 一個運算式為 false,因此函式會傳
false
回 。 - 這兩個表示式都是 false,因此函式會傳
false
回 。
範例 2
這些範例會檢查指定的運算式是否全部為 true:
and(equals(1, 1), equals(2, 2))
and(equals(1, 1), equals(1, 2))
and(equals(1, 2), equals(1, 3))
並分別傳回下列結果:
- 這兩個運算式都是 true,因此函式會傳
true
回 。 - 一個運算式為 false,因此函式會傳
false
回 。 - 這兩個表示式都是 false,因此函式會傳
false
回 。
任意
判斷序列的任何專案是否符合條件。
all(<sequence>, <item>, <condition>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<序列> | Yes | object | 要評估的序列。 |
<專案> | Yes | 字串 | 參考序列中要評估的專案。 |
<condition> | Yes | expression | 要評估條件的表達式。 |
傳回值 | 類型 | 描述 |
---|---|---|
[True] 或 [False] | 布林值 | 如果所有元素都符合條件,則傳回 true 。 如果至少有未傳回 ,則傳回 false 。 |
範例
這些範例會判斷序列的所有元素是否符合條件:
any(createArray(1, 'cool'), item, isInteger(item))
any(createArray('first', 'cool'), item => isInteger(item))
並分別傳回下列結果:
- true,因為序列中至少有一個專案是整數
- false,因為序列中的兩個專案都不是整數。
平均值
傳回數值陣列的平均值。
average(<numericArray>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<numericArray> | Yes | 數字陣列 | 要計算平均值的輸入陣列 |
傳回值 | 類型 | 描述 |
---|---|---|
<average-of-array> | 數值 | 指定陣列的平均值 |
範例
此範例會計算 中 createArray()
陣列的平均值:
average(createArray(1,2,3))
並傳回結果 2。
base64
傳回字串或位元組數位的base64編碼版本。
base64('<value>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | 字串或位元組陣列 | 輸入字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<base64-string> | 字串 | 輸入字串的base64編碼版本 |
範例 1
此範例會將字串 hello 轉換成 base64 編碼的字串:
base64('hello')
並傳回結果 「aGVsbG8=」。
範例 2
這個範例採用 byteArr
等於 new byte[] { 3, 5, 1, 12 }
的 。
base64('byteArr')
並傳回結果 「AwUBDA==」。。
base64ToBinary
傳回base64編碼字串的二進位數位。
base64ToBinary('<value>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | 字串 | 要轉換的 base64 編碼字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<binary-for-base64-string> | 位元組陣列 | base64 編碼字串的二進位版本 |
範例
這個範例會將base64編碼的字串 AwUBDA== 轉換成二進位字串:
base64ToBinary('AwUBDA==')
並傳回結果 new byte[] { 3, 5, 1, 12 }。
base64ToString
傳回base64編碼字串的字串版本,有效地譯碼base64字串。
base64ToString('<value>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | 字串 | 要解碼的 base64 編碼字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<decoded-base64-string> | 字串 | base64 編碼字串的字串版本 |
範例
此範例會將base64編碼的字串 aGVsbG8= 轉換成譯碼的字串:
base64ToString('aGVsbG8=')
並傳回結果 hello。
binary
傳回字串的二進位版本。
binary('<value>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | 字串 | 要轉換的字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<binary-for-input-value> | 位元組陣列 | 指定字串的二進位版本 |
範例
此範例會將字串 hello 轉換成二進位字串:
binary('hello')
並傳回結果 new byte[] { 104, 101, 108, 108, 111 }。
bool
傳回值的布爾值版本。
bool(<value>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | 任意 | 要轉換的值 |
傳回值 | 類型 | 描述 |
---|---|---|
[True] 或 [False] | 布林值 | 指定值的布爾值版本 |
範例
這些範例會將指定的值轉換為布林值:
bool(1)
bool(0)
並分別傳回下列結果:
true
false
ceiling
傳回小於或等於指定數位的最大整數值。
ceiling('<number>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<number> | Yes | 數值 | 輸入編號 |
傳回值 | 類型 | 描述 |
---|---|---|
<integer-value> | 整數 | 大於或等於輸入數位的最大整數值 |
範例
此範例會傳回小於或等於數位 10.333 的最大整數值:
ceiling(10.333)
並傳回整數 11。
coalesce
從一個或多個參數中傳回第一個非 Null 值。 空白字串、空白陣列和空白物件不是 null。
coalesce(<object**1>, <object**2>, ...)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<object**1>, <object**2>, ... | Yes | 任何 (可接受混合類型) | 要檢查是否有 Null 的一個或多個項目 |
傳回值 | 類型 | 描述 |
---|---|---|
<first-non-null-item> | 任意 | 第一個不是 Null 的項目或值。 如果所有參數都是 Null,則此函式會傳回 Null。 |
範例
這些範例會從指定值傳回第一個非 Null 的值,或是,如果所有值都是 Null,則傳回 Null:
coalesce(null, true, false)
coalesce(null, 'hello', 'world')
coalesce(null, null, null)
並分別傳回:
true
- 你好
- null
concat
合併兩個或多個物件,並傳回清單或字串中的合併物件。
concat('<text1>', '<text2>', ...)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<object1>, <object2>, ... | Yes | 任意 | 至少要 concat 的兩個物件。 |
傳回值 | 類型 | 描述 |
---|---|---|
<object1object2...> | 字串或清單 | 合併的字串或清單。 略過 Null 值。 |
預期的傳回值:
- 如果所有專案都是清單,則會傳回清單。
- 如果專案不是清單,則會傳回字串。
- 如果值為 null,則會略過該值,且不會串連。
範例
此範例結合字串 Hello 和 World:
concat('Hello', 'World')
並傳回結果 HelloWorld。
範例 2
此範例結合清單 [1,2] 和 [3,4]:
concat([1,2],[3,4])
並傳回結果 [1,2,3,4]。
範例 3
這些範例會結合不同類型的物件:
concat('a', 'b', 1, 2)
concat('a', [1,2])
並分別傳回下列結果:
- 字串 ab12。
- 物件 aSystem.Collections.Generic.List 1[System.Object]。 這是無法讀取的,最好避免。
範例 4
這些範例會結合 物件:null
concat([1,2], null)
concat('a', 1, null)
並分別傳回下列結果:
- 清單 [1,2]。
- 字串 a1。
contains
檢查集合是否具有特定項目。 true
如果找到專案,則傳回 ;如果找不到,則傳回 false
。 此函式會區分大小寫。
contains('<collection>', '<value>')
contains([<collection>], '<value>')
此函式適用於下列集合類型:
- 要尋找「子字串」的「字串」
- 要尋找「值」的「陣列」
- 要尋找「索引碼」的「字典」
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<collection> | Yes | 字串、陣列或字典 | 要檢查的集合 |
<value> | Yes | 分別字串、陣列或字典 | 要尋找的項目 |
傳回值 | 類型 | 描述 |
---|---|---|
[True] 或 [False] | 布林值 | 如果找到專案,則傳回 true 。 如果找不到,則傳回 false 。 |
範例 1
此範例會檢查字串 hello world 中的子字串:
contains('hello world', 'world')
並傳回結果 true
。
範例 2
此範例會檢查字串 hello world 是否有子字串 宇宙:
contains('hello world', 'universe')
並傳回結果 false
。
計數
傳回集合中的項目數目。
count('<collection>')
count([<collection>])
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<collection> | Yes | 字串或陣列 | 要計算其項目數的集合 |
傳回值 | 類型 | 描述 |
---|---|---|
<length-or-count> | 整數 | 集合中的項目數目 |
範例:
這些範例會計算以下集合中的項目數:
count('abcd')
count(createArray(0, 1, 2, 3))
兩者都會傳回結果 4。
countWord
傳回字串中的字數
countWord('<text>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<text> | 是 | 字串 | 要計算的字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<計數> | 整數 | 字串中的字數 |
範例
此範例會計算字串 hello world 中的字數:
countWord("hello word")
並傳回結果 2。
convertFromUTC
將選擇性地區設定格式的時間戳從通用時間國際標準 (UTC) 轉換為目標時區。
convertFromUTC('<timestamp>', '<destinationTimeZone>', '<format>'?, '<locale>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 包含時間戳記的字串 |
<destinationTimeZone> | Yes | 字串 | 目標時區的名稱。 支援 Windows 和 IANA 時區。 |
<format> | No | 字串 | 自訂格式模式。 時間戳的預設格式是 「o」 格式 yyyy-MM-ddTHH:mm:ss.fffffffK,符合 ISO 8601。 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
<converted-timestamp> | 字串 | 轉換為目標時區的時間戳記 |
範例:
這些範例會從 UTC 轉換為太平洋標準時間:
convertFromUTC('2018-02-02T02:00:00.000Z', 'Pacific Standard Time', 'MM-DD-YY')
convertFromUTC('2018-02-02T02:00:00.000Z', 'Pacific Standard Time')
並分別傳回下列結果:
- 02-01-18
- 2018-01-01T18:00:00.0000000
範例 2
此範例會將 en-US 地區設定中的時間戳從 UTC 轉換為太平洋標準時間:
convertFromUTC('2018-01-02T02:00:00.000Z', 'Pacific Standard Time', 'D', 'en-US')
並傳回 2018 年 1 月 1 日星期一的結果。
convertToUTC
將選擇性地區設定格式的時間戳轉換為來源時區的通用時間國際標準時間(UTC)。
convertToUTC('<timestamp>', '<sourceTimeZone>', '<format>'?, '<locale>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 包含時間戳記的字串 |
<sourceTimeZone> | Yes | 字串 | 目標時區的名稱。 支援 Windows 和 IANA 時區。 |
<format> | No | 字串 | 自訂格式模式。 時間戳的預設格式為 UTC ISO 格式 YYYY-MM-DDTHH:mm:ss.fffZ,符合 ISO 8601。 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
<converted-timestamp> | 字串 | 轉換為目標時區的時間戳記 |
範例
本範例會將時間戳從太平洋標準時間轉換成 UTC
convertToUTC('01/01/2018 00:00:00', 'Pacific Standard Time')
並傳回結果 2018-01-01T08:00:00.000Z。
範例 2
本範例會將 de-DE 地區設定中的時間戳從太平洋標準時間轉換成 UTC:
convertToUTC('01/01/2018 00:00:00', 'Pacific Standard Time', '', 'de-DE')
並傳回結果 01.01.18 08:00:00。
createArray
從多個輸入傳回陣列。
createArray('<object1>', '<object2>', ...)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<object1>, <object2>, ... | Yes | 任何,但不混合 | 用來建立陣列的至少兩個項目 |
傳回值 | 類型 | 描述 |
---|---|---|
[<object1>, <object2>, ...] | 陣列 | 從所有輸入項目建立的陣列 |
範例
此範例會從下列輸入建立數位:
createArray('h', 'e', 'l', 'l', 'o')
並傳回結果 [h,e, l, l, o]。
dataUri
傳回字串的數據統一資源標識碼(URI)。
dataUri('<value>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | 字串 | 要轉換的字串 |
傳回值 | 類型 | 描述 |
---|---|---|
[<date-uri>] | 字串 | 輸入字串的資料 URI |
範例
dataUri('hello')
傳回結果 數據:text/plain;charset=utf-8;base64,aGVsbG8=。
dataUriToBinary
傳回數據統一資源標識碼的二進位版本(URI)。
dataUriToBinary('<value>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | 字串 | 要轉換的資料 URI |
傳回值 | 類型 | 描述 |
---|---|---|
[<binary-for-data-uri>] | 位元組陣列 | 數據 URI 的二進位版本 |
範例
此範例會建立下列資料 URI 的二進位版本:
dataUriToBinary('aGVsbG8=')
並傳回結果 new byte[] { 97, 71, 86, 115, 98, 71, 56, 61 }。
dataUriToString
傳回數據統一資源標識碼的字串版本(URI)。
dataUriToString('<value>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | 字串 | 要轉換的資料 URI |
傳回值 | 類型 | 描述 |
---|---|---|
[<string-for-data-uri>] | 字串 | 數據 URI 的字串版本 |
範例
此範例會從下列資料 URI 建立字串:
dataUriToString('data:text/plain;charset=utf-8;base64,aGVsbG8=')
並傳回結果 hello。
date
以 m/dd/yyyy 格式傳回指定時間戳的日期。
date('<timestramp>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 包含時間戳記的字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<date> | 字串 | 指定時間戳的日期 |
date('2018-03-15T13:00:00.000Z')
傳回結果 3-15-2018。
dateReadBack
使用日期時間連結庫來提供日期回寫。
dateReadBack('<currentDate>', '<targetDate>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<currentDate> | Yes | 字串 | 包含目前日期的字串 |
<targetDate> | Yes | 字串 | 包含目標日期的字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<date-readback> | 字串 | 目前日期與目標日期之間的回寫 |
範例 1
dateReadBack('2018-03-15T13:00:00.000Z', '2018-03-16T13:00:00.000Z')
明天傳回結果。
dateTimeDiff
傳回兩個時間戳之間的刻度差異。
dateTimeDiff('<timestamp1>', '<timestamp2>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp1> | Yes | 字串 | 要比較的第一個時間戳字串 |
<timestamp2> | Yes | 字串 | 要比較的第二個時間戳字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<ticks> | 數值 | 兩個時間戳之間的刻度差異 |
範例 1
此範例會傳回兩個時間戳之間的刻度差異:
dateTimeDiff('2019-01-01T08:00:00.000Z','2018-01-01T08:00:00.000Z')
並傳回數位 31536000000000。
範例 2
此範例會傳回兩個時間戳之間的刻度差異:
dateTimeDiff('2018-01-01T08:00:00.000Z', '2019-01-01T08:00:00.000Z')
傳回結果 -315360000000000。 值為負數。
dayOfMonth
傳回時間戳記中的當月日期。
dayOfMonth('<timestamp>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 包含時間戳記的字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<day-of-month> | 整數 | 在指定時間戳記中的當月日期 |
範例
此範例會從下列時間戳傳回月份日期的數位:
dayOfMonth('2018-03-15T13:27:36Z')
並傳回結果 15。
dayOfWeek
從時間戳記傳回當週的第幾天。
dayOfWeek('<timestamp>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 包含時間戳記的字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<day-of-week> | 整數 | 指定時間戳中的星期數。 星期日為 0,星期一為 1,依此類推。 |
範例
此範例會從下列時間戳傳回星期幾的數位:
dayOfWeek('2018-03-15T13:27:36Z')
並傳回結果 3。
dayOfYear
從時間戳記傳回一年的第幾天。
dayOfYear('<timestamp>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 包含時間戳記的字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<day-of-year> | 整數 | 在指定時間戳記上那一年的第幾天 |
範例
此範例會從下列時間戳傳回年份的日期數目:
dayOfYear('2018-03-15T13:27:36Z')
並傳回結果 74。
div
傳回兩數相除的整數結果。 若要傳回餘數,請參閱 mod()。
div(<dividend>, <divisor>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<dividend> | Yes | 數值 | 要除以「除數」的數字 |
<divisor> | Yes | 數值 | 除 數的數位。 不得為 0。 |
傳回值 | 類型 | 描述 |
---|---|---|
<quotient-result> | 數值 | 將第一個數位除以第二個數字的結果 |
範例
這兩個範例會將第一個數字除以第二個數字:
div(10, 5)
div(11, 5)
並傳回結果 2。
Javascript 與 .NET SDK 之間存在一些差距。 例如,下列表達式會在 Javascript 和 .NET SDK 中傳回不同的結果:
如果其中一個參數是 float,結果也會是具有 .NET SDK 的 FLOAT。
範例
div(11.2, 2)
傳回結果 5.6。
如果其中一個參數是 float,則結果會是具有 Javascript SDK 的 INT。
範例
div(11.2, 2)
傳回結果 5。
Javascript 在結果中保留特定小數位數的因應措施是使用這類表達式。 例如,若要保留 3 個小數字數:
float(concat(string(div(a, b)),'.',string(mod(div(a*1000, b), 1000))))
empty
檢查實例是否為空的。 如果輸入是空的,則傳回 true
。
空白表示:
- input 為 null 或 undefined
- input 是 Null 或空字串
- 輸入為零大小集合
- input 是沒有屬性的物件。
empty('<instance>')
empty([<instance>])
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<instance> | Yes | 任意 | 要檢查的實例 |
傳回值 | 類型 | 描述 |
---|---|---|
[True] 或 [False] | 布林值 | 當實體是空的時傳回 true 。 |
範例
這些範例會檢查指定的實體是否為空的:
empty('')
empty('abc')
empty([1])
empty(null)
並分別傳回這些結果:
- 傳遞空字串,讓函式傳
true
回 。 - 傳遞字串 abc,讓函式傳
false
回 。 - 使用一個項目傳遞集合,因此函式會傳
false
回 。 - 傳遞 Null 物件,讓函式傳
true
回 。
endsWith
檢查字串是否以特定的子字串結束。 true
如果找到子字串,則傳回 ;如果找不到,則傳回 false
。 此函式不區分大小寫。
endsWith('<text>', '<searchText>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<text> | 是 | 字串 | 要檢查的字串 |
<searchText> | Yes | 字串 | 要尋找的結尾子字串 |
傳回值 | 類型 | 描述 |
---|---|---|
[True] 或 [False] | 布林值 | 找到結束子字串時傳回 true 。 如果找不到,則傳回false |
範例 1
此範例會檢查 hello world 字串是否以字串世界結尾:
endsWith('hello world', 'world')
並傳回結果 true
。
範例 2
此範例會檢查 hello world 字串是否以字串宇宙結尾:
endsWith('hello world', 'universe')
並傳回結果 false
。
EOL
傳回行尾 (EOL) 序列文字。
EOL()
傳回值 | 類型 | 描述 |
---|---|---|
<IsOSPlatform> | 字串 | 在 Windows 中傳回 \r\n,在 Mac 和 Linux 中傳回 \n。 |
範例
此範例會檢查列序列文字的結尾:
EOL()
並傳回下列字串:
- Windows: \r\n
- Mac 或 Linux: \n
等於
檢查兩個值、運算式或物件是否相等。 如果兩者相等,則傳 true
回 ;如果兩者不相等,則傳回 false
。
equals('<object1>', '<object2>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<object1>, <object2> | Yes | 任意 | 要比較的值、運算式或物件 |
傳回值 | 類型 | 描述 |
---|---|---|
[True] 或 [False] | 布林值 | 當兩者相等時傳回 true 。 如果 不是相等,則傳回 false 。 |
範例
這些範例會檢查指定的輸入是否相等:
equals(true, 1)
equals('abc', 'abcd')
並分別傳回這些結果:
- 這兩個值都相等,因此函式會傳
true
回 。 - 這兩個值不相等,因此函式會傳
false
回 。
存在
評估表達式的真實性。
exists(expression)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
expression | Yes | expression | 評估真實性的表達式 |
傳回值 | 類型 | 描述 |
---|---|---|
<true 或 false> | 布林值 | 評估表達式的結果 |
範例
這些範例會評估 的 foo = {"bar":"value"}
真實性:
exists(foo.bar)
exists(foo.bar2)
並分別傳回這些結果:
true
false
exp
將一個數字的指數傳回另一個數位。
exp(realNumber, exponentNumber)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
realNumber | Yes | 數值 | 要計算指數的實數 |
exponentNumber | Yes | 數值 | 指數數位 |
傳回值 | 類型 | 描述 |
---|---|---|
<result-exp> | 數值 | 計算指數的結果 realNumber |
範例
此範例會計算指數:
exp(2, 2)
並傳回結果 4。
第一
傳回字串或陣列中的第一個項目。
first('<collection>')
first([<collection>])
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<collection> | Yes | 字串或陣列 | 要在其中尋找第一個專案的集合 |
傳回值 | 類型 | 描述 |
---|---|---|
<first-collection-item> | 任意 | 集合中的第一個項目 |
範例
這些範例會尋找下列集合中的第一個專案:
first('hello')
first(createArray(0, 1, 2))
並分別傳回這些結果:
- 小時
- 0
flatten
將陣列扁平化為非數位值。 您可以選擇性地將最大深度設定為扁平化。
flatten([<collection>], '<depth>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<collection> | Yes | 陣列 | 要壓平的集合 |
<深度> | No | 數值 | 要扁平化的最大深度。 預設值為無限大。 |
傳回值 | 類型 | 描述 |
---|---|---|
<new-collection> | 陣列 | 新的集合,其專案已扁平化為非數位至指定的深度 |
範例 1
THis 範例會將下列數位列數組扁平化:
flatten(createArray(1, createArray(2), createArray(createArray(3, 4), createArray(5, 6)))
並傳回結果 [1, 2, 3, 4, 5, 6]。
範例 2
此範例會將陣列扁平化為 深度 1:
flatten(createArray(1, createArray(2), createArray(createArray(3, 4), createArray(5, 6)), 1)
並傳回結果 [1, 2, [3, 4], [5, 6]]。
float
將浮點數的字串版本轉換為浮點數。 只有在將自定義參數傳遞至應用程式時,才能使用此函式,例如邏輯應用程式。 如果字串無法轉換成 float,則會擲回例外狀況。
float('<value>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | 字串 | 字串,其有效浮點數要轉換成 |
傳回值 | 類型 | 描述 |
---|---|---|
<float-value> | float | 指定字串的浮點數 |
範例
此範例會轉換字串的 float 版本:
float('10.333')
並傳回 float 10.333。
floor
傳回小於或等於指定數位的最大整數值。
floor('<number>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<number> | Yes | 數值 | 輸入編號 |
傳回值 | 類型 | 描述 |
---|---|---|
<integer-value> | 整數 | 小於或等於輸入數位的最大整數值 |
範例
此範例會計算數位 10.333 的底板值:
floor(10.333)
並傳回整數 10。
foreach
在每個專案上操作,並傳回新的集合。
foreach([<collection/instance>], <iteratorName>, <function>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<集合/實例> | Yes | 陣列或物件 | 具有專案的集合 |
<iteratorName> | Yes | iterator 名稱 | 箭頭函式的索引鍵專案 |
<函數> | Yes | expression | 包含的函式 iteratorName |
傳回值 | 類型 | 描述 |
---|---|---|
<new-collection> | 陣列 | 函式評估每個元素的新集合 |
範例 1
此範例會產生新的集合:
foreach(createArray(0, 1, 2, 3), x, x + 1)
並傳回結果 [1, 2, 3, 4]。
範例 2
這些範例會產生新的集合:
foreach(json("{'name': 'jack', 'age': '15'}"), x, concat(x.key, ':', x.value))
foreach(json("{'name': 'jack', 'age': '15'}"), x=> concat(x.key, ':', x.value))
並傳回結果 ['name:jack', 'age:15']。 請注意,第二個 表達式是 Lambda 運算式,有些表達式會發現更容易閱讀。
formatDateTime
以選擇性的地區設定格式傳回時間戳。
formatDateTime('<timestamp>', '<format>'?, '<locale>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 包含時間戳記的字串 |
<format> | No | 字串 | 自訂格式模式。 時間戳的預設格式為 UTC ISO 格式 YYYY-MM-DDTHH:mm:ss.fffZ,符合 ISO 8601。 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
<reformatted-timestamp> | 字串 | 所指定格式的更新時間戳記 |
範例 1
此範例會將時間戳記轉換為指定格式:
formatDateTime('03/15/2018 12:00:00', 'yyyy-MM-ddTHH:mm:ss')
並傳回結果 2018-03-15T12:00:00。
範例 2
此範例會轉換 de-DE 地區設定中的時間戳:
formatDateTime('2018-03-15', '', 'de-DE')
並傳回結果 15.03.18 00:00:00。
formatEpoch
從 UNIX 時間傳回選擇性地區設定格式的時間戳(也稱為 Epoch 時間、POSIX 時間、UNIX Epoch 時間)。
formatEpoch('<epoch>', '<format>'?, '<locale>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<時代> | Yes | 數值 | Epoch 數位 |
<format> | No | 字串 | 自訂格式模式。 時間戳的預設格式為 UTC ISO 格式 YYYY-MM-DDTHH:mm:ss.fffZ,符合 ISO 8601。 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
<reformatted-timestamp> | 字串 | 所指定格式的更新時間戳記 |
範例
這個範例會將 Unix 時間戳轉換成指定的格式:
formatEpoch(1521118800, 'yyyy-MM-ddTHH:mm:ss.fffZ)'
並傳回結果 2018-03-15T12:00:00.000Z。
範例
此範例會在 de-DE 地區設定中轉換 Unix 時間戳:
formatEpoch(1521118800, '', 'de-DE')
並傳回結果 15.03.18 13:00:00。
formatNumber
將值格式化為指定的小數位數,以及選擇性的指定地區設定。
formatNumber('<number>', '<precision-digits>', '<locale>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<number> | Yes | 數值 | 輸入編號 |
<precision-digits> | Yes | 整數 | 指定的小數位數 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
<傳回值> | 數值 | 以指定小數位數和指定地區設定格式化之輸入的傳回值 |
範例 1
本範例會將數位 10.333 格式化為 2 個小數位:
formatNumber(10.333, 2)
並傳回字串 10.33。
範例 2
這些範例會將數位格式化為 en-US 地區設定中指定的數位數目:
formatNumber(12.123, 2, 'en-US')
formatNumber(1.551, 2, 'en-US')
formatNumber(12.123, 4, 'en-US')
並分別傳回下列結果:
- 12.12
- 1.55
- 12.1230
formatTicks
從刻度傳回選擇性地區設定格式的時間戳。
formatTicks('<ticks>', '<format>'?, '<locale>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<時代> | Yes | number (或 JavaScript 中的 bigint) | 刻度編號 |
<format> | No | 字串 | 自訂格式模式。 時間戳的預設格式為 UTC ISO 格式 YYYY-MM-DDTHH:mm:ss.fffZ,符合 ISO 8601。 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
<reformatted-timestamp> | 字串 | 所指定格式的更新時間戳記 |
範例 1
本範例會將刻度轉換成指定的格式:
formatTicks(637243624200000000, 'yyyy-MM-ddTHH:mm:ss.fffZ')
並傳回結果 2020-05-06T11:47:00.000Z。
範例 2
本範例會將刻度轉換成 de-DE 地區設定中指定的格式:
formatTicks(637243624200000000, '', 'de-DE')
並傳回結果 06.05.20 11:47:00。
getFutureTime
傳回選擇性地區設定格式加上指定時間單位的目前時間戳。
getFutureTime(<interval>, <timeUnit>, '<format>'?, '<locale>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<interval> | Yes | 整數 | 要新增的特定時間單位數目 |
<timeUnit> | Yes | 字串 | 要搭配 間隔使用的時間單位。 可能的單位為 “Second”、“Minute”、“Hour”、“Day”、“Week”、“Month” 和 “Year”。 |
<format> | No | 字串 | 自訂格式模式。 時間戳的預設格式為 UTC ISO 格式 YYYY-MM-DDTHH:mm:ss.fffZ,符合 ISO 8601。 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
<updated-timestamp> | 字串 | 目前時間戳記加上指定的時間單位數字 |
範例 1
假設目前的時間戳是 2019-03-01T00:00:00.000Z。 下列範例會將五天新增至該時間戳:
getFutureTime(2, 'Week')
並傳回結果 2019-03-15T00:00:00.000Z。
範例 2
假設目前的時間戳是 2018-03-01T00:00:00.000Z。 下列範例會將五天新增至時間戳,並將結果 轉換成MM-DD-YY 格式:
getFutureTime(5, 'Day', 'MM-DD-YY')
並傳回結果 03-06-18。
範例 3
假設目前的時間戳為 2020-05-01T00:00:00.000Z ,且地區設定為 de-DE。 下列範例會將 1 天新增至時間戳:
getFutureTime(1,'Day', '', 'de-DE')
並傳回結果 02.05.20 00:00:00。
getNextViableDate
根據目前日期和選擇性指定的時區,傳回 Timex 表達式的下一個可行日期。
getNextViableDate(<timexString>, <timezone>?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timexString> | Yes | 字串 | 要評估之日期的 Timex 字串。 |
<timezone> | No | 字串 | 選擇性時區。 |
傳回值 | 類型 | 描述 |
---|---|---|
<nextViableTime> | 字串 | 下一個可行的日期。 |
範例
假設日期是 2020-06-12 ,而目前時間是 15:42:21。
這些範例會根據上述日期和時間評估下一個可行日期的 Timex 字串:
getPreviousViableDate("XXXX-12-20", "America/Los_Angeles")
getPreviousViableDate("XXXX-02-29")
並分別傳回下列字串:
- 2020-12-20
- 2024-02-29
getNextViableTime
根據目前時間和選擇性指定的時區,傳回 Timex 表達式的下一個可行時間。
getNextViableTime(<timexString>, <timezone>?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timexString> | Yes | 字串 | 要評估之時間的 Timex 字串。 |
<timezone> | No | 字串 | 選擇性時區。 |
傳回值 | 類型 | 描述 |
---|---|---|
<nextViableTime> | 字串 | 下一個可行的時間。 |
範例
假設日期是 2020-06-12 ,而目前時間是 15:42:21。
這些範例會根據上述日期和時間,評估下一個可行時間的 Timex 字串:
getNextViableTime("TXX:12:14", "Asia/Tokyo")
getNextViableTime("TXX:52:14")
並分別傳回下列字串:
- T16:12:14
- T15:52:14
getPastTime
傳回目前時間戳記減去指定時間單位的結果。
getPastTime(<interval>, <timeUnit>, '<format>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<interval> | Yes | 整數 | 要減去的特定時間單位數目 |
<timeUnit> | Yes | 字串 | 要搭配 間隔使用的時間單位。 可能的單位為 “Second”、“Minute”、“Hour”、“Day”、“Week”、“Month” 和 “Year”。 |
<format> | No | 字串 | 自訂格式模式。 時間戳的預設格式為 UTC ISO 格式 YYYY-MM-DDTHH:mm:ss.fffZ,符合 ISO 8601。 |
傳回值 | 類型 | 描述 |
---|---|---|
<updated-timestamp> | 字串 | 目前時間戳記減去指定的時間單位數字 |
範例 1
假設目前的時間戳是 2018-02-01T00:00:00.000Z。 此範例會從此時間戳記中減去五天:
getPastTime(5, 'Day')
並傳回結果 2019-01-27T00:00:00.000Z。
範例 2
假設目前的時間戳是 2018-03-01T00:00:00.000Z。 此範例會將五天減去MM-DD-YY 格式的時間戳:
getPastTime(5, 'Day', 'MM-DD-YY')
並傳回結果 02-26-18。
範例 3
假設目前的時間戳為 2020-05-01T00:00:00.000Z ,且地區設定為 de-DE。 下列範例會 從時間戳減去 1 天:
getPastTime(1,'Day', '', 'de-DE')
並傳回結果 31.04.20 00:00:00。
getPreviousViableDate
根據目前日期和選擇性指定的時區,傳回 Timex 表達式的先前可行日期。
getPreviousViableDate(<timexString>, <timezone>?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timexString> | Yes | 字串 | 要評估之日期的 Timex 字串。 |
<timezone> | No | 字串 | 選擇性時區。 |
傳回值 | 類型 | 描述 |
---|---|---|
<previousViableDate> | 字串 | 先前可行的日期。 |
範例
假設日期是 2020-06-12 ,而目前時間是 15:42:21。
這些範例會根據上述日期和時間,評估先前可行日期的 Timex 字串:
getPreviousViableDate("XXXX-12-20", "Eastern Standard Time")
getPreviousViableDate("XXXX-02-29")
並分別傳回下列字串:
- 2019-12-20
- 2020-02-29
getPreviousViableTime
根據目前日期和選擇性指定的時區,傳回 Timex 表達式的先前可行時間。
getPreviousViableTime(<timexString>, <timezone>?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timexString> | Yes | 字串 | 要評估之時間的 Timex 字串。 |
<timezone> | No | 字串 | 選擇性時區。 |
傳回值 | 類型 | 描述 |
---|---|---|
<previousViableTime> | 字串 | 先前可行的時間。 |
範例
假設日期是 2020-06-12 ,而目前時間是 15:42:21。
這些範例會根據上述日期和時間,評估先前可行時間的 Timex 字串:
getPreviousViableTime("TXX:52:14")
getPreviousViableTime("TXX:12:14", 'Europe/London')
並分別傳回下列字串:
- T14:52:14
- T15:12:14
getProperty
從 JSON 物件傳回指定屬性或根屬性的值。
傳回指定屬性的值
getProperty(<JSONObject>, '<propertyName>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<JSONObject> | Yes | object | 包含屬性和值的 JSON 物件。 |
propertyName<> | No | 字串 | 要從中存取值的選擇性屬性名稱。 |
傳回值 | 類型 | 描述 |
---|---|---|
value | 字串 | JSON 物件中指定屬性的值。 |
範例
假設您有下列 JSON 物件:
{
"a:b" : "a:b value",
"c":
{
"d": "d key"
}
}
這些範例會從上述 JSON 物件擷取指定的屬性:
getProperty({"a:b": "value"}, 'a:b')
getProperty(c, 'd')
並分別傳回下列字串:
- a:b 值
- d 鍵
傳回根屬性
getProperty('<propertyName>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
propertyName<> | Yes | 字串 | 要從根記憶體範圍存取值的選擇性屬性名稱。 |
傳回值 | 類型 | 描述 |
---|---|---|
value | 字串 | JSON 物件中根屬性的值。 |
範例
假設您有下列 JSON 物件:
{
"a:b" : "a:b value",
"c":
{
"d": "d key"
}
}
此範例會從上述 JSON 物件擷取根屬性:
getProperty("a:b")
並傳回字串 a:b 值。
getTimeOfDay
傳回指定時間戳的一天時間。
getTimeOfDay('<timestamp>')
傳回的時間是下列其中一個字串:
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 包含指定時間戳的字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<一天中的時間> | 字串 | 指定時間戳的一天時間 |
下面列出與一天時間相關聯的字串:
一天中的時間 | 時間戳記 |
---|---|
午夜 | 上午 12 點 |
上午 | 上午 12:01 – 下午 11:59 |
下午 | 下午 12 點 |
傍晚 | 下午 06:00 – 下午 10:00 |
夜間 | 下午 10:01 – 下午 11:59 |
範例
getTimeOfDay('2018-03-15T08:00:00.000Z')
傳回結果 上午。
greater
檢查第一個值是否大於第二個值。 如果第一個值更多,則傳 true
回 ;如果小於則傳回 false
。
greater(<value>, <compareTo>)
greater('<value>', '<compareTo>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | 整數、浮點數或字串 | 要檢查其是否大於第二個值的第一個值 |
<compareTo> | Yes | 整數、浮點數或字串分別 | 比較值 |
傳回值 | 類型 | 描述 |
---|---|---|
[True] 或 [False] | 布林值 | 如果第一個值大於第二個值,則傳回 true 。 如果第一個值等於或小於第二個值,則傳回 false 。 |
範例
以下範例會檢查第一個值是否大於第二個值:
greater(10, 5)
greater('apple', 'banana')
並分別傳回下列結果:
true
false
greaterOrEquals
檢查第一個值是否大於或等於第二個值。 true
當第一個值大於或等於時傳回 ,如果第一個值小於,則傳回 false
。
greaterOrEquals(<value>, <compareTo>)
greaterOrEquals('<value>', '<compareTo>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | 整數、浮點數或字串 | 要檢查其是否大於或等於第二個值的第一個值 |
<compareTo> | Yes | 整數、浮點數或字串分別 | 比較值 |
傳回值 | 類型 | 描述 |
---|---|---|
[True] 或 [False] | 布林值 | 如果第一個值大於或等於第二個值,則傳回 true 。 如果第一個值小於第二個值,則傳回 false 。 |
範例
以下範例會檢查第一個值是否大於或等於第二個值:
greaterOrEquals(5, 5)
greaterOrEquals('apple', 'banana')
並分別傳回下列結果:
true
false
if
檢查運算式是 True 或 False。 根據結果,傳回指定的值。
if(<expression>, <valueIfTrue>, <valueIfFalse>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<expression> | Yes | 布林值 | 要檢查的運算式 |
<valueIfTrue> | Yes | 任意 | 表達式為 true 時要傳回的值 |
<valueIfFalse> | Yes | 任意 | 如果表達式為 false,則傳回的值 |
傳回值 | 類型 | 描述 |
---|---|---|
<specified-return-value> | 任意 | 根據表達式 true 為 或 傳回的指定值 false |
範例
此範例會評估 是否 equals(1,1)
為 true:
if(equals(1, 1), 'yes', 'no')
會傳 回 yes ,因為指定的運算式會傳 true
回 。 否則,此範例會傳 回 no。
indexOf
傳回子字串的起始位置或索引值。 此函式不區分大小寫,而索引開頭為數位0。
indexOf('<text>', '<searchText>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<text> | Yes | 字串或陣列 | 具有子字串要尋找的字串 |
<searchText> | Yes | 字串 | 要尋找的子字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<index-value> | 整數 | 指定子字串的起始位置或索引值。 |
如果找不到該字串,傳回數字 -1。 |
範例 1
此範例會在字串 hello world 中尋找子字串世界的起始索引值:
indexOf('hello world', 'world')
並傳回結果 6。
範例 2
此範例會尋找陣列 ['abc', 'def', 'ghi'] 中子字串 def 的起始索引值:
indexOf(createArray('abc', 'def', 'ghi'), 'def')
並傳回結果 1。
indicesAndValues
將陣列或物件轉換成具有索引(目前索引)和值屬性的物件陣列。 針對陣列,索引是陣列中的位置。 如果是物件,它是值的索引鍵。
indicesAndValues('<collection or object>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<集合或物件> | Yes | 陣列或物件 | 原始數位或物件 |
傳回值 | 類型 | 描述 |
---|---|---|
<collection> | 陣列 | 新的陣列。 每個專案都有兩個屬性:索引具有數位的位置或物件的索引鍵,以及對應的值。 |
範例 1
假設您有列表 { items: [“zero”, “one”, “two”] }。 下列函式會採用該清單:
indicesAndValues(items)
並傳回新的清單:
[
{
index: 0,
value: 'zero'
},
{
index: 1,
value: 'one'
},
{
index: 2,
value: 'two'
}
]
範例 2
假設您有列表 { items: [“zero”, “one”, “two”] }。 下列函式會採用該清單:
where(indicesAndValues(items), elt, elt.index >= 1)
並傳回新的清單:
[
{
index: 1,
value: 'one'
},
{
index: 2,
value: 'two'
}
]
範例 3
假設您有列表 { items: [“zero”, “one”, “two”] }。 下列函式會採用該清單:
join(foreach(indicesAndValues(items), item, item.value), ',')
並傳回結果 零、一、二。 此表達式的效果與 join(items, ',')相同。
範例 4
假設您有物件 { 使用者: {name: 'jack', age: 20} }。 下列函式會採用該物件:
indicesAndValues(user)
並傳回新的物件:
[
{
index: 'name',
value: 'jack'
},
{
index: 'age',
value: 20
}
]
int
傳回字串的整數版本。 如果字串無法轉換成整數,則會擲回例外狀況。
int('<value>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | 字串 | 要轉換的字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<integer-result> | 整數 | 指定字串的整數版本 |
範例
此範例會建立字串 10 的整數版本:
int('10')
並以整數 10 傳回結果。
交集
在指定的多個集合中,傳回「只有」共同項目的集合。 項目若要出現在結果中,必須出現在所有傳遞至此函式的集合中。 如果一個或多個項目有相同的名稱,則具有該名稱的最後一個項目會出現在結果中。
intersection([<collection1>], [<collection2>], ...)
intersection('<collection1>', '<collection2>', ...)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<collection1>, <collection2> | Yes | 陣列或物件,但不是兩者 | 您只想要通用專案的集合 |
傳回值 | 類型 | 描述 |
---|---|---|
<common-items> | 陣列或物件,分別 | 在指定的多個集合中,「只有」共同項目的集合 |
範例
此範例會尋找下列陣列中的一般專案:
intersection(createArray(1, 2, 3), createArray(101, 2, 1, 10), createArray(6, 8, 1, 2))
並只傳回包含專案 [1, 2] 的陣列。
isArray
如果指定的輸入是陣列,則傳回 true
。
isArray('<input>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<input> | Yes | 任意 | 要測試的輸入 |
傳回值 | 類型 | 描述 |
---|---|---|
<Boolean-result> | 布林值 | 如果指定的輸入是陣列,則傳 true 回 ;如果不是陣列,則傳回 false 。 |
範例
下列範例會檢查輸入是否為陣列:
isArray('hello')
isArray(createArray('hello', 'world'))
並分別傳回下列結果:
- 輸入是字串,因此函式會傳
false
回 。 - 輸入是陣列,因此函式會傳
true
回 。
isBoolean
如果指定的輸入是布林值,則傳回 true
。
isBoolean('<input>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<input> | Yes | 任意 | 要測試的輸入 |
傳回值 | 類型 | 描述 |
---|---|---|
<Boolean-result> | 布林值 | 如果指定的輸入是布林值,則傳 true 回 ;如果不是布林值,則傳回 false 。 |
範例
下列範例會檢查輸入是否為布林值:
isBoolean('hello')
isBoolean(32 > 16)
並分別傳回下列結果:
isDate
如果指定的 TimexProperty 或 Timex 運算式參考有效的日期,則傳回 true
。 有效日期包含 month 和 dayOfMonth,或包含 dayOfWeek。
isDate('<input>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<input> | Yes | 物件或字串 | 輸入 TimexProperty 物件或 Timex 運算式字串。 |
傳回值 | 類型 | 描述 |
---|---|---|
<boolean-result> | 布林值 | true 如果輸入參考有效的日期,則傳回 ;如果日期無效,則傳回 false 。 |
範例
這些範例會檢查下列輸入是否為有效的日期:
isDate('2020-12')
isDate('xxxx-12-21')
並傳回下列結果:
false
true
isDateRange
如果指定的 TimexProperty 或 Timex 運算式參考有效的日期範圍,則傳回 true
。
isDateRange('<input>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<input> | Yes | 物件或字串 | 輸入 TimexProperty 物件 Timex 運算式字串。 |
傳回值 | 類型 | 描述 |
---|---|---|
<boolean-result> | 布林值 | true 如果指定的輸入參考有效的日期範圍,則傳回 ;如果不是有效的日期範圍,則傳回 false 。 |
範例
這些範例會檢查下列輸入是否為有效的日期範圍:
isDateRange('PT30M')
isDateRange('2012-02')
並傳回下列結果:
false
true
isDateTime
如果指定的輸入是 UTC ISO 格式(YYYY-MM-DDTHH:mm:ss.fffZ) 時間戳字串,則傳回 true
。
isDateTime('<input>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<input> | Yes | 任意 | 要測試的輸入 |
傳回值 | 類型 | 描述 |
---|---|---|
<Boolean-result> | 布林值 | 如果指定的輸入是 UTC ISO 格式時間戳字串,則傳 true 回 ,如果不是 UTC ISO 格式時間戳字串,則傳回 false 。 |
範例
下列範例會檢查輸入是否為 UTC ISO 格式字串:
isDateTime('hello world!')
isDateTime('2019-03-01T00:00:00.000Z')
並分別傳回下列結果:
- 輸入是字串,因此函式會傳
false
回 。 - 輸入是 UTC ISO 格式字串,因此函式會傳
true
回 。
isDefinite
如果指定的 TimexProperty 或 Timex 運算式參考有效的日期,則傳回 true
。 有效日期包含年份、月份和 dayOfMonth。
isDefinite('<input>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<input> | Yes | 物件或字串 | 輸入 TimexProperty 物件 Timex 運算式字串。 |
傳回值 | 類型 | 描述 |
---|---|---|
<boolean-result> | 布林值 | true 如果指定的輸入參考有效的完整日期,則傳回 ;如果指定的輸入未參考有效的完整日期,則傳回 false 。 |
範例
假設有 TimexProperty 物件 validFullDate = new TimexProperty(“2020-02-20”) 且 Now
屬性設定為 true
。 下列範例會檢查物件是否參考有效的完整日期:
isDefinite('xxxx-12-21')
isDefinite(validFullDate)
並分別傳回下列結果:
false
true
isDuration
如果指定的 TimexProperty 或 Timex 運算式參考有效的持續時間,則傳回 true
。
isDuration('<input>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<input> | Yes | 物件或字串 | 輸入 TimexProperty 物件 Timex 運算式字串。 |
傳回值 | 類型 | 描述 |
---|---|---|
<boolean-result> | 布林值 | true 如果輸入參考有效的持續時間,則傳回 ;如果輸入未參考有效的持續時間,則傳回 false 。 |
範例
下列範例會檢查下列輸入是否參考有效的持續時間:
isDuration('PT30M')
isDuration('2012-02')
並分別傳回下列結果:
true
false
isFloat
如果指定的輸入是浮點數,則傳回 true
。 由於 C# 與 JavaScript 之間的對齊方式,其模數 1 的非零殘渣數位會被視為浮點數。
isFloat('<input>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<input> | Yes | 任意 | 要測試的輸入 |
傳回值 | 類型 | 描述 |
---|---|---|
<Boolean-result> | 布林值 | true 如果指定的輸入是浮點數,則傳回 ;如果輸入不是浮點數,則傳回 false 。 |
範例
下列範例會檢查輸入是否為浮點數:
isFloat('hello world!')
isFloat(1.0)
isFloat(12.01)
並分別傳回下列結果:
- 輸入是字串,因此函式會傳
false
回 。 - 輸入的模數等於 0,因此函式會傳
false
回 。 - 輸入是浮點數,因此函式會傳
true
回 。
isInteger
如果指定的輸入是整數,則傳回 true
。 由於 C# 與 JavaScript 之間的對齊方式,其模數 1 零殘差的數位會被視為整數。
isInteger('<input>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<input> | Yes | 任意 | 要測試的輸入 |
傳回值 | 類型 | 描述 |
---|---|---|
<Boolean-result> | 布林值 | 這是輸入是整數數位 |
範例
下列範例會檢查輸入是否為整數:
isInteger('hello world!')
isInteger(1.0)
isInteger(12)
並分別傳回下列結果:
- 輸入是字串,因此函式會傳
false
回 。 - 輸入的模數等於 0,因此函式會傳
true
回 。 - 輸入是整數,因此函式會傳
true
回 。
isMatch
如果指定的字串符合指定的正規表示式模式,則傳回 true
。
isMatch('<target**string>', '<pattern>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<target**string> | Yes | 字串 | 要比對的字串 |
<模式> | Yes | 字串 | 正則表達式模式 |
傳回值 | 類型 | 描述 |
---|---|---|
<Boolean-result> | 布林值 | 如果指定的字串符合一般正規表示式模式,則傳 true 回 ;如果不符合模式,則傳回 false 。 |
範例
下列範例會檢查輸入是否符合指定的正規表示式模式:
isMatch('ab', '^[a-z]{1,2}$')
isMatch('FUTURE', '(?i)fortune|future')
isMatch('12abc34', '([0-9]+)([a-z]+)([0-9]+)')
isMatch('abacaxc', 'ab.*?c')
並傳回相同的結果 true
。
isObject
如果指定的輸入是複雜物件,則傳 true
回 ,如果它是基本物件,則傳回 false
。 基本物件包括字串、數位和布爾值;複雜類型,例如類別,包含屬性。
isObject('<input>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<input> | Yes | 任意 | 要測試的輸入 |
傳回值 | 類型 | 描述 |
---|---|---|
<Boolean-result> | 布林值 | 如果指定的輸入是複雜物件,則傳 true 回 ;如果它是基本物件,則傳回 false 。 |
範例
下列範例會檢查指定的輸入是否為物件:
isObject('hello world!')
isObject({userName: "Sam"})
並分別傳回下列結果:
- 輸入是字串,因此函式會傳
false
回 。 - 輸入是物件,因此函式會傳
true
回 。
isPresent
如果指定的 TimexProperty 或 Timex 運算式參考目前,則傳回 true
。
isPresent('<input>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<input> | Yes | 物件或字串 | 輸入 TimexProperty 物件 Timex 運算式字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<boolean-result> | 布林值 | true 如果輸入參考目前,則傳回 ;如果輸入未參考目前,則傳回 false。 |
範例 假設我們有 TimexProperty 物件 validNow = new TimexProperty() { Now = true } ,並將 屬性設定 Now
為 true
。 下列範例會檢查下列輸入是否參考目前:
isPresent('PT30M')
isPresent(validNow)
並分別傳回下列結果:
false
true
isString
如果指定的輸入是字串,則傳回 true
。
isString('<input>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<input> | Yes | 任意 | 要測試的輸入 |
傳回值 | 類型 | 描述 |
---|---|---|
<Boolean-result> | 布林值 | true 如果指定的輸入是字串,則傳回 ;如果不是字串,則傳回 false 。 |
範例
下列範例會檢查指定的輸入是否為字串:
isString('hello world!')
isString(3.14)
並分別傳回下列結果:
- 輸入是字串,因此函式會傳
true
回 。 - 輸入是浮點數,因此函式會傳
false
回 。
isTime
如果指定的 TimexProperty 或 Timex 運算式參考有效的時間,則傳回 true
。 有效時間包含小時、分和秒。
isTime('<input>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<input> | Yes | 物件或字串 | 輸入 TimexProperty 物件 Timex 運算式字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<boolean-result> | 布林值 | true 如果輸入參考有效時間,則傳回 ;如果輸入未參考有效的時間,則傳回 false 。 |
範例
這些範例會檢查下列輸入是否參考有效的時間:
isTime('PT30M')
isTime('2012-02-21T12:30:45')
並分別傳回下列結果:
false
true
isTimeRange
如果指定的 TimexProperty 或 Timex 運算式參考有效的時間範圍有效時間範圍包含 partOfDay,則傳回 true
。
isTime('<input>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<input> | Yes | 物件或字串 | 輸入 TimexProperty 物件 Timex 運算式字串。 |
傳回值 | 類型 | 描述 |
---|---|---|
<boolean-result> | 布林值 | true 如果輸入參考有效的時間範圍,則傳回 ;如果輸入未參考有效的時間範圍,則傳回 false 。 |
範例
假設我們有 TimexProperty 物件 validTimeRange = new TimexProperty() { PartOfDay = “morning” } ,並將 屬性設定 Now
為 true
。 這些範例會檢查下列輸入是否為有效的時間範圍:
isTimeRange('PT30M')
isTimeRange(validTimeRange)
並分別傳回下列結果:
false
true
join
傳回字串,其中包含數位中的所有專案,每個字元都以 分隔符分隔。
join([<collection>], '<delimiter>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<collection> | Yes | 陣列 | 要將其項目聯結的陣列 |
<delimiter> | Yes | 字串 | 在結果字串中,要出現在每個字元之間的分隔符號 |
傳回值 | 類型 | 描述 |
---|---|---|
<char1><delimiter><char2><delimiter>... | 字串 | 從指定陣列中所有項目建立的結果字串 |
範例
此範例會從這個陣列中具有指定字元 的所有專案建立字串,做為分隔符:
join(createArray('a', 'b', 'c'), '.')
並傳回結果 a.b.c。
jPath
檢查 JSON 或 JSON 字串中是否有符合路徑表達式的節點或值,並傳回相符的節點。
jPath(<json>, '<path>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<json> | Yes | 任意 | 要搜尋符合路徑表示式值的節點或值的 JSON 物件或字串 |
<path> | Yes | 任意 | 用來尋找相符 JSON 節點或值的路徑表達式 |
傳回值 | 類型 | 描述 |
---|---|---|
[ <json-node>] | 陣列 | 符合指定路徑表達式的 JSON 節點或值清單 |
C# 範例
假設您有下列 JSON:
{
"Stores": [
"Lambton Quay",
"Willis Street"
],
"Manufacturers": [
{
"Name": "Acme Co",
"Products": [
{
"Name": "Anvil",
"Price": 50
}
]
},
{
"Name": "Contoso",
"Products": [
{
"Name": "Elbow Grease",
"Price": 99.95
},
{
"Name": "Headlight Fluid",
"Price": 4
}
]
}
]
}
路徑表達式為 $.。產品[?(@.Price >= 50)]。名字
jPath(jsonStr, path)
它會傳回結果 [“Anvil”、“肘部脂”] 。
JavaScript 範例
假設您有下列 JSON:
{
"automobiles": [
{
"maker": "Nissan",
"model": "Teana",
"year": 2011
},
{
"maker": "Honda",
"model": "Jazz",
"year": 2010
},
{
"maker": "Honda",
"model": "Civic",
"year": 2007
},
{
"maker": "Toyota",
"model": "Yaris",
"year": 2008
},
{
"maker": "Honda",
"model": "Accord",
"year": 2011
}
],
"motorcycles": [
{
"maker": "Honda",
"model": "ST1300",
"year": 2012
}
]
}
路徑表達式為 .automobiles{.maker \ “本田”& .year > 2009}.model。
jPath(jsonStr, path)
並傳回結果 ['Jazz', 'Accord']。
json
傳回字串或 XML 的 JavaScript 物件表示法 (JSON) 類型值或物件。
json('<value>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | 字串或 XML | 要轉換的字串或 XML |
傳回值 | 類型 | 描述 |
---|---|---|
<JSON-result> | 字串 | 從指定的字串或 XML 建立產生的 JSON 物件。 |
範例 1
此範例會將字串轉換成 JSON:
json('{"fullName": "Sophia Owen"}')
並傳回結果:
{
"fullName": "Sophia Owen"
}
範例 2
此範例會將 XML 轉換成 JSON:
json(xml('<?xml version="1.0"?> <root> <person id='1'> <name>Sophia Owen</name> <occupation>Engineer</occupation> </person> </root>'))
並傳回結果:
{
"?xml": { "@version": "1.0" },
"root": {
"person": [ {
"@id": "1",
"name": "Sophia Owen",
"occupation": "Engineer"
} ]
}
}
jsonStringify
傳回值的 JSON 字串。
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | object | 要轉換成 JSON 字串的物件 |
傳回值 | 類型 | 描述 |
---|---|---|
<JSON-result> | 字串 | 產生的 JSON 字串。 |
範例
這些範例顯示轉換成 JSON 字串的物件:
jsonStringify(null)
jsonStringify({a:'b'})
並分別傳回下列字串結果:
- null
- {“a”:“b”}
最後一
傳回集合中的最後一個項目。
last('<collection>')
last([<collection>])
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<collection> | Yes | 字串或陣列 | 要在其中尋找最後一個專案的集合 |
傳回值 | 類型 | 描述 |
---|---|---|
<last-collection-item> | 字串或陣列,分別 | 集合中的最後一個項目 |
範例
這些範例會尋找以下集合中最後一個項目:
last('abcd')
last(createArray(0, 1, 2, 3))
並分別傳回下列結果:
- 日
- 3
lastIndexOf
傳回子字串最後一次出現的起始位置或索引值。 此函式不區分大小寫,而索引開頭為數位0。
lastIndexOf('<text>', '<searchText>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<text> | Yes | 字串或陣列 | 具有子字串要尋找的字串 |
<searchText> | Yes | 字串 | 要尋找的子字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<ending-index-value> | 整數 | 指定子字串最後一次出現的起始位置或索引值。 如果找不到字串,則傳回數位 -1。 |
範例 1
此範例會尋找 hello world 字串中最後一個子字串世界出現的起始索引值:
lastIndexOf('hello world', 'world')
並傳回結果 6。
範例 2
此範例會尋找陣列 ['abc', 'def', 'ghi', 'def'] 中最後一次出現子字串 def 的起始索引值。
lastIndexOf(createArray('abc', 'def', 'ghi', 'def'), 'def')
並傳回結果 3。
length
傳回字串的長度。
length('<str>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<str> | Yes | 字串 | 要計算長度的字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<length> | 整數 | 此字串的長度 |
範例
這些範例會取得字串的長度:
length('hello')
length('hello world')
並分別傳回下列結果:
- 5
- 11
less
檢查第一個值是否小於第二個值。 true
如果第一個值較少,則傳回 ;如果第一個值更多,則傳回 false
。
less(<value>, <compareTo>)
less('<value>', '<compareTo>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | 整數、浮點數或字串 | 要檢查其是否小於第二個值的第一個值 |
<compareTo> | Yes | 整數、浮點數或字串分別 | 比較項目 |
傳回值 | 類型 | 描述 |
---|---|---|
[True] 或 [False] | 布林值 | 如果第一個值小於第二個值,則傳回 true 。 如果第一個值等於或大於第二個值,則傳回 false 。 |
範例
以下範例會檢查第一個值是否小於第二個值。
less(5, 10)
less('banana', 'apple')
並分別傳回下列結果:
true
false
lessOrEquals
檢查第一個值是否小於或等於第二個值。 true
如果第一個值小於或等於,則傳回 ;如果第一個值更多,則傳回 false
。
lessOrEquals(<value>, <compareTo>)
lessOrEquals('<value>', '<compareTo>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | 整數、浮點數或字串 | 要檢查其是否小於或等於第二個值的第一個值 |
<compareTo> | Yes | 整數、浮點數或字串分別 | 比較項目 |
傳回值 | 類型 | 描述 |
---|---|---|
[True] 或 [False] | 布林值 | 如果第一個值小於或等於第二個值,則傳回 true 。 如果第一個值大於第二個值,則傳回 false 。 |
範例
這些範例會檢查第一個值是否小於或等於第二個值。
lessOrEquals(10, 10)
lessOrEquals('apply', 'apple')
並分別傳回下列結果:
true
false
max
從清單或陣列傳回最高值。 清單或陣列在兩端都是內含的。
max(<number1>, <number2>, ...)
max([<number1>, <number2>, ...])
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<number1>, <number2>, ... | Yes | 數值 | 您需要其中最大值的數字集合 |
[<number1>, <number2>, ...] | Yes | 數字數位 | 您需要其中最大值的數字陣列 |
傳回值 | 類型 | 描述 |
---|---|---|
<max-value> | 數值 | 所指定陣列或數字集合中的最大值 |
範例
這些範例會從數字集合和陣列中取得最大值:
max(1, 2, 3)
max(createArray(1, 2, 3))
並傳回結果 3。
合併
將多個 JSON 物件或物件數組合並在一起。
merge(<json1>, <json2>, ...)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<json1>、 <json2>、... | Yes | 對象或陣列 | 要合併的 JSON 物件或陣列集合。 |
傳回值 | 類型 | 描述 |
---|---|---|
<result> | object | 合併的 JSON 物件或合併的陣列物件。 |
範例
假設您有下列 JSON 物件:
json1 = @"{
'FirstName': 'John',
'LastName': 'Smith',
'Enabled': false,
'Roles': [ 'User' ]
}"
json2 =@"{
'Enabled': true,
'Roles': [ 'User', 'Admin' ]
}"
此範例會合併 JSON 物件:
string(merge(json(json1), json(json2)))
並傳回產生的物件 {“FirstName”:“John”,“LastName”:“Smith”,“Enabled”:true,“Roles”:[“User”,“Admin”]}。
假設您想要將物件和物件清單結合在一起。 下列範例會結合 JSON 物件和 物件的陣列:
merge({k1:'v1'}, [{k2:'v2'}, {k3: 'v3'}], {k4:'v4'})
並傳回物件 { “k1”: “v1”、“k2”: “v2”、“k3”: “v3”、“k4”: “v4” }。
分鐘
從數字集合或陣列中傳回最小值。
min(<number1>, <number2>, ...)
min([<number1>, <number2>, ...])
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<number1>, <number2>, ... | Yes | 數值 | 您需要其中最小值的數字集合 |
[<number1>, <number2>, ...] | Yes | 數字數位 | 您需要其中最小值的數字陣列 |
傳回值 | 類型 | 描述 |
---|---|---|
<min-value> | 數值 | 指定數位集合中的最小值 |
範例
這些範例會取得數字集合和陣列中的最小值:
min(1, 2, 3)
min(createArray(1, 2, 3))
並傳回結果 1。
mod
傳回兩數相除的餘數。 若要取得整數結果,請參閱 div()。
mod(<dividend>, <divisor>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<dividend> | Yes | 數值 | 要除以「除數」的數字 |
<divisor> | Yes | 數值 | 除 數的數位。 不得為 0。 |
傳回值 | 類型 | 描述 |
---|---|---|
<modulo-result> | 數值 | 第一個數字除以第二個數字的餘數 |
範例
此範例會將第一個數字除以第二個數字:
mod(3, 2)
並傳回結果 1。
month
傳回指定時間戳的月份。
month('<timestamp>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 包含時間戳記的字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<月數> | 整數 | 指定時間戳中的月份數目 |
範例
month('2018-03-15T13:01:00.000Z')
並傳回結果 3。
mul
傳回將兩數相乘的乘積。
mul(<multiplicand1>, <multiplicand2>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<multiplicand1> | Yes | 整數或浮點數 | 要與「被乘數 2」 相乘的數字 |
<multiplicand2> | Yes | 整數或浮點數 | 要與「被乘數 1」 相乘的數字 |
傳回值 | 類型 | 描述 |
---|---|---|
<product-result> | 整數或浮點數 | 第一個數字與第二個數字相乘的乘積 |
範例
這些範例會將第一個數字與第二個數字相乘:
mul(1, 2)
mul(1.5, 2)
並分別傳回下列結果:
- 2
- 3
newGuid
傳回新的 Guid 字串。
newGuid()
傳回值 | 類型 | 描述 |
---|---|---|
<Guid-string> | 字串 | 新的 Guid 字串串,長度為 36,看起來像 xxxxxxxx-xxxx-4xxx-yxxx-xxxxxx |
範例
newGuid()
它會傳回遵循 xxxxxxxx-xxxx-4xxx-yxxx-xxxxxx 格式的結果。
not
檢查運算式是否為 False。 true
如果表示式為 false,則傳回 ;如果為 true,則傳回 false
。
not(<expression>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<expression> | Yes | 布林值 | 要檢查的運算式 |
傳回值 | 類型 | 描述 |
---|---|---|
[True] 或 [False] | 布林值 | 如果表示式為 false,則傳回 true 。 如果表示式為 true,則傳回 false 。 |
範例 1
這些範例會檢查指定的運算式是否為 False:
not(false)
not(true)
並分別傳回下列結果:
- 運算式為 false,因此函式會傳
true
回 。 - 運算式為 true,因此函式會傳
false
回 。
範例 2
這些範例會檢查指定的運算式是否為 False:
not(equals(1, 2))
not(equals(1, 1))
並分別傳回下列結果:
- 運算式為 false,因此函式會傳
true
回 。 - 運算式為 true,因此函式會傳
false
回 。
或
檢查是否至少有一個運算式是 True。 如果至少有一個運算式為 true,則傳 true
回 ;如果全部為 false,則傳回 false
。
or(<expression1>, <expression2>, ...)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<expression1>, <expression2>, ... | Yes | 布林值 | 要檢查的運算式 |
傳回值 | 類型 | 描述 |
---|---|---|
[True] 或 [False] | 布林值 | 如果至少有一個表示式為 true,則傳回 true 。 如果所有表示式都是 false,則傳回 false 。 |
範例 1
這些範例會檢查是否至少有一個運算式是 True:
or(true, false)
or(false, false)
並分別傳回下列結果:
- 至少有一個運算式為 true,因此函式會傳
true
回 。 - 這兩個表示式都是 false,因此函式會傳
false
回 。
範例 2
這些範例會檢查是否至少有一個運算式是 True:
or(equals(1, 1), equals(1, 2))
or(equals(1, 2), equals(1, 3))
並分別傳回下列結果:
- 至少有一個運算式為 true,因此函式會傳
true
回 。 - 這兩個表示式都是 false,因此函式會傳
false
回 。
rand
從指定範圍傳回隨機整數 (不包含範圍中的末端數字)。
rand(<minValue>, <maxValue>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<minValue> | Yes | 整數 | 範圍中的最小整數 |
<maxValue> | Yes | 整數 | 在範圍中,在函式所能傳回最大整數後面的整數 |
傳回值 | 類型 | 描述 |
---|---|---|
<random-result> | 整數 | 從指定範圍傳回的隨機整數 |
範例
此範例會從指定範圍取得隨機整數,但不包含最大值:
rand(1, 5)
並傳回 結果為 1、 2、 3 或 4 。
range
傳回從指定整數開始的整數陣列。
range(<startIndex>, <count>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<startIndex> | Yes | 整數 | 作為第一個項目起始陣列的整數值 |
<計數> | Yes | 整數 | 陣列中的整數數量 |
傳回值 | 類型 | 描述 |
---|---|---|
<range-result> | 整數 | 從指定索引開始的整數陣列 |
範例
此範例會建立從指定索引 1 開始的整數陣列,並將指定的整數數目設定為 4:
range(1, 4)
並傳回結果 [1, 2, 3, 4]。
removeProperty
從物件中移除屬性,並傳回更新的物件。
removeProperty(<object>, '<property>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<object> | Yes | object | 您要在其中移除屬性的 JSON 物件 |
<property> | Yes | 字串 | 要移除的屬性名稱 |
傳回值 | 類型 | 描述 |
---|---|---|
<updated-object> | object | 未指定屬性的更新 JSON 物件 |
範例
這個範例會 accountLocation
從 customerProfile
物件中移除 屬性,該物件會使用 json() 函式轉換成 JSON,並傳回更新的物件:
removeProperty(json('customerProfile'), 'accountLocation')
replace
使用指定字串取代子字串,並傳回結果字串。 此函式會區分大小寫。
replace('<text>', '<oldText>', '<newText>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<text> | 是 | 字串 | 有子字串要取代的字串 |
<oldText> | Yes | 字串 | 要取代的子字串 |
<newText> | Yes | 字串 | 取代字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<updated-text> | 字串 | 取代子字串之後更新的字串。 如果找不到子字串,函式會傳回原始字串。 |
範例 1
此範例會尋找舊字串中的子字串,並將 old 取代為 new:
replace('the old string', 'old', 'new')
結果是新字串的字串。
範例 2
處理逸出字元時,表達式引擎會為您處理 Unescape。 此函式會將字串取代為逸出字元。
replace('hello\"', '\"', '\n')
replace('hello\n', '\n', '\\\\')
@"replace('hello\\', '\\', '\\\\')"
@"replace('hello\n', '\n', '\\\\')"
並分別傳回下列結果:
- hello\n
- 你好\\
- @“hello\\”
- @“hello\\”
replaceIgnoreCase
使用指定字串取代子字串,並傳回結果字串。 此函式不區分大小寫。
replaceIgnoreCase('<text>', '<oldText>', '<newText>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<text> | 是 | 字串 | 有子字串要取代的字串 |
<oldText> | Yes | 字串 | 要取代的子字串 |
<newText> | Yes | 字串 | 取代字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<updated-text> | 字串 | 取代子字串之後更新的字串。 如果找不到子字串,則傳回原始字串。 |
範例
此範例會在字串中尋找舊字串中的子字串,並將 old 取代為 new:
replace('the old string', 'old', 'new')
並傳回新字串的結果。
resolve
如果指定 TimexProperty 或 Timex 運算式參考有效的時間,則傳回字串。 有效時間包含小時、分鐘和秒。
resolve('<timestamp')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 包含時間戳的字串。 |
傳回值 | 類型 | 描述 |
---|---|---|
<return> | 字串 | 評估之 TimexProperty 或 Timex 表達式的字串。 |
範例
這些範例顯示指定的字串是否參考有效時間:
resolve(T14)
resolve(2020-12-20)
resolve(2020-12-20T14:20)
並分別傳回下列結果:
- 14:00:00
- 2020-12-20
- 2020-12-20 14:20:00
reverse
反轉字串或陣列中的項目順序。
reverse(<value>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | 字串或陣列 | 要反轉之陣列的字串。 |
傳回值 | 類型 | 描述 |
---|---|---|
<return> | 字串或陣列 | 字串或陣列的反轉專案。 |
範例
這些範例會反轉字串或陣列的元素:
reverse(hello)
reverse(concat(hello,world))
並分別傳回下列值:
-字串 olleh。 -字串 dlrowolleh。
round
將值四捨五入為最接近的整數或指定的小數位數。
round('<number>', '<precision-digits>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<number> | Yes | 數值 | 輸入編號 |
<precision-digits> | No | 整數 | 指定的小數位數。 預設值是 0。 |
傳回值 | 類型 | 描述 |
---|---|---|
<傳回值> | 數值 | 輸入的傳回值,以指定的小數位數四捨五入 |
範例 1
此範例會四捨五入數位 10.333:
round(10.333)
並傳回數位 10。
範例 2
此範例會將數位 10.3313 四捨五入為 2 個小數位:
round(10.3313, 2)
並傳回數位 10.33。
select
在每個元素上操作,並傳回已轉換專案的新集合。
select([<collection/instance>], <iteratorName>, <function>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<集合/實例> | Yes | 陣列 | 具有專案的集合 |
<iteratorName> | Yes | iterator 名稱 | 索引鍵專案 |
<函數> | Yes | expression | 可包含的函式 iteratorName |
傳回值 | 類型 | 描述 |
---|---|---|
<new-collection> | 陣列 | 使用函式評估每個專案的新集合 |
範例 1
此範例會產生新的集合:
select(createArray(0, 1, 2, 3), x, x + 1)
並傳回結果 [1, 2, 3, 4]。
範例 2
這些範例會產生新的集合:
select(json("{'name': 'jack', 'age': '15'}"), x, concat(x.key, ':', x.value))
select(json("{'name': 'jack', 'age': '15'}"), x=> concat(x.key, ':', x.value))
並傳回結果 ['name:jack', 'age:15']。 請注意,第二個 表達式是 Lambda 運算式,有些表達式會發現更容易閱讀。
sentenceCase
以選擇性地區設定格式將字串中第一個單字的第一個字母大寫。
sentenceCase('<text>', '<locale>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<text> | 是 | 字串 | 原始字串 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
result string | 字串 | 傳回句子案例結果 |
範例 1
這些範例會將字串中的第一個字母大寫:
sentenceCase('a')
sentenceCase('abc def')
sentenceCase('aBC dEF')
並分別傳回下列結果:
- A
- Abc def
- Abc def
範例 2
這些範例會以指定的地區設定格式將字串中的第一個字母大寫:
sentenceCase('a', 'fr-FR')
sentenceCase('abc', 'en-US')
sentenceCase('aBC', 'fr-FR')
並分別傳回下列結果:
- A
- Abc
- Abc
setPathToValue
從 JSON 物件擷取指定屬性的值。
setPathToValue(<path>, <value>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<路徑> | Yes | object | 您要設定的路徑 |
<value> | Yes | object | 您要設定為路徑的值 |
傳回值 | 類型 | 描述 |
---|---|---|
value | object | 要設定的值 |
範例 1
下列範例會將值 1 設定為路徑:
setPathToValue(path.x, 1)
並傳回結果 1。 path.x
已設為 1。
範例 2
下列範例會設定 值:
setPathToValue(path.array[0], 7) + path.array[0]
並傳回結果 14。
setProperty
設定物件的 屬性值,並傳回更新的物件。 若要新增屬性,請使用此函式或 addProperty() 函式。
setProperty(<object>, '<property>', <value>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<object> | Yes | object | 您要在其中設定屬性的 JSON 物件 |
<property> | Yes | 字串 | 要設定的屬性名稱 |
<value> | Yes | 任意 | 要為指定之屬性設定的值 |
傳回值 | 類型 | 描述 |
---|---|---|
<updated-object> | object | 您所設定屬性的已更新 JSON 物件 |
範例
本範例會 accountNumber
設定 物件上的 customerProfile
屬性,該物件會使用 json() 函式轉換成 JSON。 函式會指派 newGuid() 函式所產生的值,並傳回更新的 JSON 物件:
setProperty(json('customerProfile'), 'accountNumber', newGuid())
skip
移除集合前端的項目,並傳回「其他所有」項目。
skip([<collection>], <count>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<collection> | Yes | 陣列 | 您想要從中移除項目的集合 |
<計數> | Yes | 整數 | 正整數,表示要移除的前端項目數量 |
傳回值 | 類型 | 描述 |
---|---|---|
<updatedCollection> | 陣列 | 移除指定項目之後的更新集合 |
範例
這個範例會從指定陣列的前面移除一個專案,數位 1:
skip(createArray(0, 1, 2, 3), 1)
並傳回包含其餘項目的陣列:[1,2,3]。
sortBy
以遞增順序排序集合中的專案,並傳回已排序的集合。
sortBy([<collection>], '<property>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<collection> | Yes | 字串或陣列 | 要排序的集合 |
<property> | No | 字串 | 如果設定,則排序集合中對象專案的這個特定屬性 |
傳回值 | 類型 | 描述 |
---|---|---|
<new-collection> | 陣列 | 已排序其專案的新集合 |
範例 1
此範例會產生下列集合:
sortBy(createArray(1, 2, 0, 3))
並傳回結果 [0, 1, 2, 3]。
範例 2
假設您有下列集合:
{
'nestedItems': [
{'x': 2},
{'x': 1},
{'x': 3}
]
}
此範例會根據 x 物件屬性產生新的排序集合
sortBy(nestedItems, 'x')
並傳回結果:
{
'nestedItems': [
{'x': 1},
{'x': 2},
{'x': 3}
]
}
sortByDescending
以遞減順序排序集合中的專案,並傳回已排序的集合。
sortBy([<collection>], '<property>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<collection> | Yes | 字串或陣列 | 要排序的集合 |
<property> | No | 字串 | 如果設定,則排序集合中對象專案的這個特定屬性 |
傳回值 | 類型 | 描述 |
---|---|---|
<new-collection> | 陣列 | 已排序其專案的新集合 |
範例 1
此範例會產生新的已排序集合:
sortByDescending(createArray(1, 2, 0, 3))
並傳回結果 [3, 2, 1, 0]。
範例 2
假設您有下列集合:
{
'nestedItems': [
{'x': 2},
{'x': 1},
{'x': 3}
]
}
此範例會根據 x 物件屬性產生新的排序集合:
sortByDescending(nestedItems, 'x')
並傳回此結果:
{
'nestedItems': [
{'x': 3},
{'x': 2},
{'x': 1}
]
}
split
根據原始字串中指定的分隔符號字元,傳回包含以逗號分隔之子字串的陣列。
split('<text>', '<delimiter>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<text> | 是 | 字串 | 要根據原始字串中指定的分隔符分隔成子字串的字串。 如果文字是 Null 值,則會將其視為空字串。 |
<delimiter> | No | 字串 | 做為分隔符的原始字串中的字元。 如果沒有提供的分隔符,或分隔符是 Null 值,則預設值會是空字串。 |
傳回值 | 類型 | 描述 |
---|---|---|
[<substring1>,<substring2>,...] | 陣列 | 包含原始字串中子字串的陣列,以逗號分隔 |
範例
這些範例會根據指定的分隔符,從指定的字串建立具有子字串的陣列:
split('a**b**c', '**')
split('hello', '')
split('', 'e')
split('', '')
split('hello')
並分別傳回下列陣列作為結果:
- [“a”, “b”, “c”]
- [“h”, “e”, “l”, “l”, “o”]
- [“”], [ ]
- [“h”, “e”, “l”, “l”, “o”]
sqrt
傳回指定數位的平方根。
sqrt(<number>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<number> | Yes | 數值 | 要取得 之平方根的數位 |
傳回值 | 類型 | 描述 |
---|---|---|
<result> | 數值 | 計算平方根的結果。 |
範例
這些範例會計算指定數位的平方根:
sqrt(9)
sqrt(0)
並分別傳回下列結果:
- 3
- 0
startOfDay
以選擇性地區設定格式傳回時間戳的開始時間。
startOfDay('<timestamp>', '<format>'?, '<locale>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 包含時間戳記的字串 |
<format> | No | 字串 | 自訂格式模式。 時間戳的預設格式為 UTC ISO 格式 YYYY-MM-DDTHH:mm:ss.fffZ,符合 ISO 8601。 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
'<updated-timestamp>' | 字串 | 指定時間戳,從當天的零小時標記開始 |
範例 1
此範例會尋找一天的開始時間:
startOfDay('2018-03-15T13:30:30.000Z')
並傳回結果 2018-03-15T00:00:00.000Z。
範例 2
此範例會使用地區設定 fr-FR尋找一天開始:
startOfDay('2018-03-15T13:30:30.000Z', '', 'fr-FR')
並傳回結果 15/03/2018 00:00:00。
startOfHour
以選擇性地區設定格式傳回時間戳的小時開始時間。
startOfHour('<timestamp>', '<format>'?, '<locale>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 包含時間戳記的字串 |
<format> | No | 字串 | 自訂格式模式。 時間戳的預設格式為 UTC ISO 格式 YYYY-MM-DDTHH:mm:ss.fffZ,符合 ISO 8601。 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
'<updated-timestamp>' | 字串 | 指定時間戳,從當天的零分鐘標記開始 |
範例 1
此範例會尋找小時開始時間:
startOfHour('2018-03-15T13:30:30.000Z')
並傳回結果 2018-03-15T13:00:00.000Z。
範例 2
此範例會尋找地區設定fr-FR的小時開始時間:
startOfHour('2018-03-15T13:30:30.000Z', '', 'fr-FR')
並傳回結果 15/03/2018 13:00:00。
startOfMonth
以選擇性地區設定格式傳回時間戳的月份開始。
startOfMonth('<timestamp>', '<format>'?, '<locale>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 包含時間戳記的字串 |
<format> | No | 字串 | 自訂格式模式。 時間戳的預設格式為 UTC ISO 格式 YYYY-MM-DDTHH:mm:ss.fffZ,符合 ISO 8601。 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
'<updated-timestamp>' | 字串 | 指定時間戳,從月份的第一天開始,以零小時標記開始 |
範例 1
此範例會尋找月份的開始:
startOfMonth('2018-03-15T13:30:30.000Z')
並傳回結果 2018-03-01T00:00:00.000Z。
範例 2
此範例會使用地區 設定fr-FR尋找月份的開頭:
startOfMonth('2018-03-15T13:30:30.000Z', '', 'fr-FR')
並傳回結果 01/03/2018 00:00:00。
startsWith
檢查字串是否以特定的子字串開始。 true
如果找到子字串,則傳回 ;如果找不到,則傳回 false
。 此函式不區分大小寫。
startsWith('<text>', '<searchText>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<text> | 是 | 字串 | 要檢查的字串 |
<searchText> | Yes | 字串 | 要尋找的起始子字串 |
傳回值 | 類型 | 描述 |
---|---|---|
[True] 或 [False] | 布林值 | 如果找到起始子字串,則傳回 true 。 如果找不到,則傳回false |
範例 1
此範例會檢查字串 hello world 是否以字串 hello 開頭:
startsWith('hello world', 'hello')
並傳回結果 true
。
範例 2
此範例會檢查字串 hello world 是否以字串 問候語開頭:
startsWith('hello world', 'greeting')
並傳回結果 false
。
字串
以選擇性地區設定格式傳回值的字串版本。
string(<value>, '<locale>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | 任意 | 要轉換的值 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
<string-value> | 字串 | 指定值的字串版本 |
範例 1
此範例會建立數位 10 的字串版本:
string(10)
並傳回字串結果 10。
範例 2
這個範例會為指定的 JSON 物件建立字串,並使用反斜杠字元\\做為雙引號字元的逸出字元 ”
string( { "name": "Sophie Owen" } )
並傳回結果 { “name”: “Sophie Owen” }
範例 3
這些範例會在特定地區設定中建立數位 10 的字串版本:
string(100.1, 'fr-FR')
string(100.1, 'en-US')
並分別傳回下列字串:
- 100,1
- 100.1
stringOrValue
包裝字串插補以取得實際值。 例如, stringOrValue('${1}')
傳回數位 1,同時 stringOrValue('${1} item')
傳回字串 「1 item」。
stringOrValue(<string>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<string> | Yes | 字串 | 要從中取得實際值的字串。 |
傳回值 | 類型 | 描述 |
---|---|---|
<result> | 任意 | 取得指定字串實際值的結果。 |
範例
這些範例會從字串取得實際值:
stringOrValue('${one}')
stringOrValue('${one} item')
並分別傳回下列結果:
- 數位 1.0。
- 字串 1 專案。
sub
傳回第一個數字減去第二個數字的結果。
sub(<minuend>, <subtrahend>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<minuend> | Yes | 數值 | 要從中減去「減數」的數字 |
<subtrahend> | Yes | 數值 | 從「被減數」中減去的數字 |
傳回值 | 類型 | 描述 |
---|---|---|
<result> | 數值 | 從第一個數字減去第二個數字的結果 |
範例
此範例會從第一個數字減去第二個數字:
sub(10.3, .3)
並傳回結果 10。
subArray
從指定的開始和結束位置傳回子陣列。 索引值會以數字 0 開頭。
subArray(<Array>, <startIndex>, <endIndex>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<array> | Yes | 陣列 | 要從中建立子陣列的陣列 |
<startIndex> | Yes | 整數 | 正數等於或大於0,用來做為起始位置或索引值 |
<endIndex> | Yes | 整數 | 正數等於或大於0,用來做為結束位置或索引值 |
傳回值 | 類型 | 描述 |
---|---|---|
<subarray-result> | 陣列 | 具有指定項目數目的子陣列,從來源字串中的指定索引位置開始 |
範例
此範例會從指定的陣列建立子數組:
subArray(createArray('H','e','l','l','o'), 2, 5)
並傳回結果 [“l”、“l”、“o”]。
substring
從指定的位置或索引開始,從字串傳回字元。 索引值會以數字 0 開頭。
substring('<text>', <startIndex>, <length>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<text> | 是 | 字串 | 要從中建立子字串的字串 |
<startIndex> | Yes | 整數 | 正數等於或大於0子陣列,用來做為起始位置或索引值 |
<length> | Yes | 整數 | 子字串中的正數位元子陣列 |
傳回值 | 類型 | 描述 |
---|---|---|
<substring-result> | 字串 | 具有指定字元數目的子字串,並以來源字串中的指定索引位置起始 |
範例
此範例會從指定字串建立 5 個字元的子字串,並且從索引值 6 起始:
substring('hello world', 6, 5)
並傳回結果 世界。
subtractFromTime
以選擇性的地區設定格式,從時間戳減去一些時間單位。 另 請參閱 getPastTime()。
subtractFromTime('<timestamp>', <interval>, '<timeUnit>', '<format>'?, '<locale>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 包含時間戳記的字串 |
<interval> | Yes | 整數 | 要減去的指定時間單位數字 |
<timeUnit> | Yes | 字串 | 要搭配 間隔使用的時間單位。 可能的單位為 “Second”、“Minute”、“Hour”、“Day”、“Week”、“Month” 和 “Year”。 |
<format> | No | 字串 | 自訂格式模式。 時間戳的預設格式為 UTC ISO 格式 YYYY-MM-DDTHH:mm:ss.fffZ,符合 ISO 8601。 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
<updated-timestamp> | 字串 | 時間戳記減去指定的時間單位數字 |
範例 1
此範例會從下列時間戳減去一天:
subtractFromTime('2018-01-02T00:00.000Z', 1, 'Day')
並傳回結果 2018-01-01T00:00:00.000Z。
範例 2
此範例會使用 D 格式從時間戳減去一天:
subtractFromTime('2018-01-02T00:00.000Z', 1, 'Day', 'D')
並傳回 2018 年 1 月 1 日星期一的結果。
範例 3
此範例會從 de-DE 地區設定中的時間戳減去 1 小時:
subtractFromTime('2018-03-15T13:00:00.000Z', 1, 'Hour', '', 'de-DE')
並傳回結果 15.03.18 12:00:00。
sum
傳回在清單中新增數字的結果。
sum([<list of numbers>])
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
[<數字>清單] | Yes | 數字數位 | 要相加的數字 |
傳回值 | 類型 | 描述 |
---|---|---|
<result-sum> | 數值 | 指定數字相加的結果 |
範例
此範例會相加指定的數字:
sum(createArray(1, 1.5))
並傳回結果 2.5。
take
傳回集合中的前端項目。
take('<collection>', <count>)
take([<collection>], <count>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<collection> | Yes | 字串或陣列 | 您需要其中項目的集合 |
<計數> | Yes | 整數 | 正整數,表示您想要從前端取得的項目數 |
傳回值 | 類型 | 描述 |
---|---|---|
<子集>或 [<子集>] | 個別的字串或陣列 | 從原始集合前端取得指定項目數量的字串或陣列 |
範例
此範例會從這些集合的前端取得指定數目的項目:
take('abcde', 3)
take(createArray(0, 1, 2, 3, 4), 3)
並分別傳回下列結果:
- abc
- [0, 1, 2]
刻度
傳回指定時間戳的刻度屬性值。 刻度為 100 奈秒的間隔。
ticks('<timestamp>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 時間戳記的字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<ticks-number> | integer (JavaScript 中的 bigint) | 自指定時間戳之後的刻度數目 |
範例
此範例會將時間戳轉換成其刻度屬性:
ticks('2018-01-01T08:00:00.000Z')
並傳回結果 636503904000000000。
ticksToDays
將刻度屬性值轉換為天數。
ticksToDays('ticks')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<ticks> | Yes | 整數 | 要轉換的刻度屬性值 |
傳回值 | 類型 | 描述 |
---|---|---|
<天數> | 數值 | 從刻度屬性值轉換的天數 |
範例
此範例會將刻度屬性值轉換為天數:
ticksToDays(2193385800000000)
並傳回數位 2538.64097222。
ticksToHours
將刻度屬性值轉換為時數。
ticksToHours('ticks')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<ticks> | Yes | 整數 | 要轉換的刻度屬性值 |
傳回值 | 類型 | 描述 |
---|---|---|
<時數> | 數值 | 從刻度屬性值轉換的時數 |
範例
此範例會將刻度屬性值轉換成小時數:
ticksToHours(2193385800000000)
並傳回數位 60927.383333333331。
ticksToMinutes
將刻度屬性值轉換為分鐘數。
ticksToMinutes('ticks')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<ticks> | Yes | 整數 | 要轉換的刻度屬性值 |
傳回值 | 類型 | 描述 |
---|---|---|
<分鐘數> | 數值 | 從刻度屬性值轉換的分鐘數 |
範例
此範例會將刻度屬性值轉換為分鐘數:
ticksToMinutes(2193385800000000)
並傳回數位 3655643.0185。
titleCase
以選擇性本機格式將字串中每個單字的第一個字母大寫。
titleCase('<text>', '<locale>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<text> | 是 | 字串 | 原始字串 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
result string | 字串 | 標題案例結果 |
範例 1
這些範例會將字串中每個單字的第一個字母大寫:
titleCase('a')
titleCase('abc def')
titleCase('aBC dEF')
並分別傳回下列結果:
- A
- Abc Def
- Abc Def
範例 2
這些範例會以 en-US 格式將字串中的第一個字母大寫:
titleCase('a', 'en-US')
titleCase('aBC dEF', 'en-US')
並分別傳回下列結果:
- A
- Abc Def
toLower
以選擇性地區設定格式傳回小寫的字串。 如果字串中的字元沒有小寫版本,則該字元在傳回的字串中會保持不變。
toLower('<text>', '<locale>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<text> | 是 | 字串 | 要以小寫格式傳回的字串 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
<lowercase-text> | 字串 | 小寫格式的原始字串 |
範例 1
這個範例會將字串轉換成小寫:
toLower('Hello World')
並傳回結果 hello world。
範例 2
此範例會以fr-FR格式將字串轉換成小寫:
toUpper('Hello World', 'fr-FR')
並傳回結果 hello world。
toUpper
以選擇性的地區設定格式傳回大寫的字串。 如果字串中的字元沒有大寫版本,則該字元在傳回的字串中會保持不變。
toUpper('<text>', '<locale>'?)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<text> | 是 | 字串 | 要以大寫格式傳回的字串 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
<uppercase-text> | 字串 | 大寫格式的原始字串 |
範例 1
這個範例會將字串轉換成大寫:
toUpper('Hello World')
並傳回結果 HELLO WORLD。
範例 2
此範例會以fr-FR格式將字串轉換成大寫:
toUpper('Hello World', 'fr-FR')
並傳回結果 HELLO WORLD。
修剪
移除字串的開頭和尾端空白字元,並傳回更新後的字串。
trim('<text>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<text> | 是 | 字串 | 要為其移除開頭和尾端空白字元的字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<updatedText> | 字串 | 不含開頭或尾端空白字元的原始字串更新版本 |
範例
此範例會從字串 「Hello World」 移除開頭和尾端空格符:
trim(' Hello World ')
並傳回修剪的結果 Hello World。
union
傳回具有指定集合中「所有」項目的集合。 出現在結果中的項目,可以出現在任何傳遞至此函式的集合中。 如果一個或多個項目有相同的名稱,則具有該名稱的最後一個項目會出現在結果中。
union('<collection1>', '<collection2>', ...)
union([<collection1>], [<collection2>], ...)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<collection1>, <collection2>, ... | Yes | 陣列或物件,但不是兩者 | 您想要其中「所有」項目的集合 |
傳回值 | 類型 | 描述 |
---|---|---|
<updatedCollection> | 陣列或物件,分別 | 集合,其中包含指定集合中的所有專案。 未新增重複專案。 |
範例
此範例會從下列集合取得所有專案:
union(createArray(1, 2, 3), createArray(1, 2, 10, 101))
並傳回結果 [1, 2, 3, 10, 101] 。
unique
從陣列中移除所有重複專案。
unique([<collection>])
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<collection> | Yes | 陣列 | 要修改的集合 |
傳回值 | 類型 | 描述 |
---|---|---|
<new-collection> | 陣列 | 拿掉重複專案的新集合 |
範例 1
此範例會從下列陣列中移除重複的專案:
unique(createArray(1, 2, 1))
並傳回結果 [1, 2]。。
uriComponent
傳回統一資源標識碼 (URI) 元件的二進位版本。
uriComponent('<value>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | 字串 | 要轉換成 URI 編碼格式的字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<encoded-uri> | 字串 | 具有逸出字元的 URI 編碼字串 |
範例
此範例會建立字串的 URI 編碼版本:
uriComponent('https://contoso.com')
並傳回結果 http%3A%2F%2Fcontoso.com。
uriComponentToString
傳回統一資源標識碼 (URI) 編碼字串的字串版本,有效地譯碼 URI 編碼的字串。
uriComponentToString('<value>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | 字串 | 要解碼的 URI 編碼字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<binary-for-encoded-uri> | 字串 | URI 編碼字串的已解碼版本 |
範例
此範例會建立 URI 編碼字串的譯碼字串版本:
uriComponentToString('http%3A%2F%2Fcontoso.com')
並傳回結果 https://contoso.com
。
uriHost
傳回統一資源標識碼 (URI) 的主機值。
uriHost('<uri>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<uri> | Yes | 字串 | 您想要其主機值的 URI |
傳回值 | 類型 | 描述 |
---|---|---|
<host-value> | 字串 | 指定 URI 的主機值 |
範例
此範例會尋找下列 URI 的主機值:
uriHost('https://www.localhost.com:8080')
並傳回結果 www.localhost.com
。
uriPath
傳回統一資源標識碼的路徑值(URI)。
uriPath('<uri>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<uri> | Yes | 字串 | 您想要其路徑值的 URI |
傳回值 | 類型 | 描述 |
---|---|---|
<path-value> | 字串 | 指定 URI 的路徑值 |
範例
這個範例會尋找下列 URI 的路徑值:
uriPath('http://www.contoso.com/catalog/shownew.htm?date=today')
並傳回結果 /catalog/shownew.htm。
uriPathAndQuery
傳回統一資源標識碼的路徑和查詢值(URI)。
uriPathAndQuery('<uri>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<uri> | Yes | 字串 | 您想要其路徑和查詢值的 URI |
傳回值 | 類型 | 描述 |
---|---|---|
<path-query-value> | 字串 | 指定 URI 的路徑和查詢值 |
範例
這個範例會尋找下列 URI 的路徑與查詢值:
uriPathAndQuery('http://www.contoso.com/catalog/shownew.htm?date=today')
並傳回結果 /catalog/shownew.htm?date=today。
uriPort
傳回統一資源標識碼 (URI) 的埠值。
uriPort('<uri>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<uri> | Yes | 字串 | 您想要其路徑值的 URI |
傳回值 | 類型 | 描述 |
---|---|---|
<port-value> | 字串 | 指定 URI 的埠值 |
範例
此範例會尋找下列 URI 的埠值:
uriPort('http://www.localhost:8080')
並傳回結果 8080。
uriQuery
傳回統一資源標識碼 (URI) 的查詢值。
uriQuery('<uri>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<uri> | Yes | 字串 | 您想要查詢值的 URI |
傳回值 | 類型 | 描述 |
---|---|---|
<query-value> | 字串 | 指定 URI 的查詢值 |
範例
此範例會尋找下列 URI 的查詢值:
uriQuery('http://www.contoso.com/catalog/shownew.htm?date=today')
並傳回結果 ?date=today。
uriScheme
傳回統一資源標識碼 (URI) 的配置值。
uriScheme('<uri>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<uri> | Yes | 字串 | 您想要查詢值的 URI |
傳回值 | 類型 | 描述 |
---|---|---|
<scheme-value> | 字串 | 指定 URI 的設定值 |
範例
此範例會尋找下列 URI 的設定值:
uriQuery('http://www.contoso.com/catalog/shownew.htm?date=today')
並傳回結果 HTTP。
utcNow
以選擇性的地區設定格式傳回目前的時間戳做為字串。
utcNow('<format>', '<locale>'?)
您可以選擇性地以 <format> 參數指定不同格式。
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<format> | No | 字串 | 自訂格式模式。 時間戳的預設格式為 UTC ISO 格式 YYYY-MM-DDTHH:mm:ss.fffZ,符合 ISO 8601。 |
<地區設定> | No | 字串 | 文化特性信息的選擇性地區設定 |
傳回值 | 類型 | 描述 |
---|---|---|
<current-timestamp> | 字串 | 目前的日期和時間 |
範例 1
假設日期是 2018 年 4 月 15 日下午 1:00:00。 此範例會取得時間戳:
utcNow()
並傳回結果 2018-04-15T13:00:00.000Z。
範例 2
假設日期是 2018 年 4 月 15 日下午 1:00:00。 此範例會使用選擇性 的 D 格式取得目前的時間戳:
utcNow('D')
並傳回結果 星期日,2018 年 4 月 15 日。
範例 3
假設日期是 2018 年 4 月 15 日下午 1:00:00。 此範例會使用 de-DE 地區設定來取得目前的時間戳:
utcNow('', 'de-DE')
並傳回結果 15.04.18 13:00:00。
where
篩選每個元素,並傳回符合特定條件之篩選專案的新集合。
where([<collection/instance>], <iteratorName>, <function>)
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<集合/實例> | Yes | 陣列 | 具有專案的集合 |
<iteratorName> | Yes | iterator 名稱 | 索引鍵專案 |
<函數> | Yes | expression | 用來篩選項目的條件函式 |
傳回值 | 類型 | 描述 |
---|---|---|
<new-collection/new-object> | array/object | 已使用函式篩選每個元素的新集合 |
範例 1
此範例會產生新的集合:
where(createArray(0, 1, 2, 3), x, x > 1)
並傳回結果 [2, 3]。
範例 2
這些範例會產生新的集合:
where(json("{'name': 'jack', 'age': '15'}"), x, x.value == 'jack')
where(json("{'name': 'jack', 'age': '15'}"), x=> x.value == 'jack')
並傳回結果 ['name:jack', 'age:15']。 請注意,第二個 表達式是 Lambda 運算式,有些表達式會發現更容易閱讀。
xml
傳回包含 JSON 物件的字串 XML 版本。
xml('<value>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<value> | Yes | 字串 | 字串,其中包含要轉換的 JSON 物件。 JSON 物件必須只能有一個根屬性,且不可以是陣列。 使用 \ 作為雙引號的逸出字元()。 |
傳回值 | 類型 | 描述 |
---|---|---|
<xml-version> | object | 所指定字串或 JSON 物件的編碼 XML |
範例 1
此範例會建立字串的 XML 版本,其中包含 JSON 物件:
xml(json('{ \"name\": \"Sophia Owen\" }'))
並傳回結果 XML:
<name>Sophia Owen</name>
範例 2
假設您有 person
JSON 物件,如下所示:
{
"person": {
"name": "Sophia Owen",
"city": "Seattle"
}
}
此範例會建立包含此 JSON 物件的字串 XML:
xml(json('{\"person\": {\"name\": \"Sophia Owen\", \"city\": \"Seattle\"}}'))
並傳回結果 XML:
<person>
<name>Sophia Owen</name>
<city>Seattle</city>
<person
xPath
檢查 XML 中是否有符合 XPath (XML 路徑語言) 運算式的節點或值,並傳回符合的節點或值。 XPath 運算式(稱為 XPath)可協助您流覽 XML 檔結構,以便選取 XML 內容中的節點或計算值。
xPath('<xml>', '<xpath>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<xml> | Yes | 任意 | XML 字串,將對其搜尋是否有符合 XPath 運算式的值或節點 |
<xPath> | Yes | 任意 | 用來尋找相符 XML 節點或值的 XPath 運算式 |
傳回值 | 類型 | 描述 |
---|---|---|
<xml-node> | XML | 只有單一節點符合指定的 XPath 運算式時會傳回 XML 節點 |
<value> | 任意 | 只有單一值符合指定的 XPath 運算式時,會傳回 XML 節點的值 |
<[<xml-node1>, <xml-node2>, ...] -or- [<value1>, <value2>, ...]> | 陣列 | 陣列,其中有符合指定 XPath 運算式的 XML 節點或值 |
範例 1
此範例會尋找符合 <name></name>
指定自變數中節點的節點,並傳回具有這些節點值的陣列:
xPath(items, '/produce/item/name')
自變數包含 專案 字串,其中包含此 XML:
"<?xml version="1.0"?> <produce> <item> <name>Gala</name> <type>apple</type> <count>20</count> </item> <item> <name>Honeycrisp</name> <type>apple</type> <count>10</count> </item> </produce>"
以下是產生的陣列,其中包含符合 <name></name>
的節點:
[ <name>Gala</name>, <name>Honeycrisp</name> ]
範例 2
下列範例 1,此範例會尋找符合節點的<count></count>
節點,並使用sum() 函式新增這些節點值:
xPath(xml(parameters('items')), 'sum(/produce/item/count)')
並傳回結果 30。
year
傳回指定時間戳的年份。
year('<timestamp>')
參數 | 必要 | 類型 | 描述 |
---|---|---|---|
<timestamp> | Yes | 字串 | 包含時間戳記的字串 |
傳回值 | 類型 | 描述 |
---|---|---|
<year> | 整數 | 指定時間戳中的年份 |
範例
此範例會評估年份的時間戳:
year('2018-03-15T00:00:00.000Z')
它會傳回 2018 年的結果。