Работает ли strptime
?
df2= structure(c("10:43 AM", "10:54 AM", "11:54 AM", "12:07 PM", "12:15 PM",
"12:54 PM", "1:54 PM", "2:54 PM"), .Dim = c(8L, 1L))
strptime(df2, "%I:%M %p" )
Или, если вам не нужна дата, что-то вроде: Хотя это зависит от того, какой класс вам нужен для объекта.
substr(strptime(df2, "%I:%M %p" ),11,19)
Вы можете подойти, как на следующем примере.
Объяснение: unary plus
используется для приведения логического числа к числам, если результат разности этих логических значений равен zero
, то используйте сравнение по полю name
с [114 ] localeCompare () .
const originalAttributes = [
{name: "P", required: false},
{name: "D", required: true},
{name: "W", required: true},
{name: "A", required: true},
{name: "N", required: false},
{name: "S", required: false},
{name: "SI", required: false}
];
let res = originalAttributes.sort((a, b) =>
(+b.required - +a.required) || a.name.localeCompare(b.name)
);
const listNames = a => a.map(
i => `${i.name} ${i.required ? '--R' : ''}`
).join("\n");
console.log(listNames(res));