Servicenow 如何从整个日期中仅获取日期的第一部分(“DD”)?

Servicenow 如何从整个日期中仅获取日期的第一部分(“DD”)?,servicenow,Servicenow,我已将日期转换为字符串。现在,我想解析一个字符串,从DD-MM-YYYY获取DD部分 例如 如果日期为2017年05月03日DD-MM-YYYY,则目标是仅获取字符串的第一部分,即03日。您已将此问题标记为ServiceNow问题,因此我假设您正在使用ServiceNow GlideDateTime类将日期派生为字符串。如果这是正确的,您是否知道实际上可以直接从GlideDateTime对象派生月份的日期?您可以使用,或 当然,您也可以使用获取第一个连字符的位置,然后使用返回到该位置的所有内容

我已将日期转换为字符串。现在,我想解析一个字符串,从DD-MM-YYYY获取DD部分

例如


如果日期为2017年05月03日DD-MM-YYYY,则目标是仅获取字符串的第一部分,即03日。

您已将此问题标记为ServiceNow问题,因此我假设您正在使用ServiceNow GlideDateTime类将日期派生为字符串。如果这是正确的,您是否知道实际上可以直接从GlideDateTime对象派生月份的日期?您可以使用,或

当然,您也可以使用获取第一个连字符的位置,然后使用返回到该位置的所有内容

或者,如果您确定字符串中的月日将包含初始零,您可以简单地从索引0到索引2切掉一个新字符串

var date = '03-05-2017';
var newDate = date.slice(0, 2);
console.log(newDate); //==>Prints "03".
var alternateNewDate = date.slice(0, date.indexOf('-'));
console.log(alternateNewDate); //==>Prints "03".

因为DD-MM-YYYY格式是固定长度的,所以您可以对其进行子串。我无法使用GlideDateTime对象的任何函数。它给了我“空”输出。这就是为什么我必须将日期类型转换为字符串,然后再转换为整数来执行一些操作。然后我的其他建议应该适合您,例如底部的脚本剪辑:-