C# временной интервал преобразования дает другой результат
TimeSpan dayDuration = new TimeSpan(23,59,59);
var x =dayDuration.Subtract(new TimeSpan(23, 59, 59)).Subtract(Convert.ToDateTime("2019-02-01 18:00").TimeOfDay);
Console.WriteLine(dayDuration);
Console.WriteLine(x);
Console.ReadLine();
Как этот Timespan производит o/p: as -18:00:00 Но когда я попробовал это в момент js
let dayDuration ="23:59:59";
dayDuration = moment(moment("HH:mm:ss").diff(moment("2019-02-01 18:00","HH:mm:ss"))).utc().format("HH:mm:ss");
Который производит оп как 05:59:59: мне нужен C# O / P в данный момент