Si está proporcionando una marca de tiempo UTC y quiere segundos desde el 1/1/1970, entonces:
[...]
Editar
Revisé mi respuesta original y no me gustó, lo siguiente es mejor:
// Given an ISO8601 UTC timestamp, or one formatted per the OP,
// return the time in seconds since 1970-01-01T00:00:00Z
function toSecondsSinceEpoch(s) {
s = s.split(/[-A-Z :\.]/i);
var d = new Date(Date.UTC(s[0], --s[1], s[2], s[3], s[4], s[5]));
return Math.round(d.getTime()/1000);
}
Tenga en cuenta que la cadena en el OP no cumple con ISO8601, pero lo anterior funcionará con ella. Si la marca de tiempo está en la zona horaria local, entonces:
// Given an ISO8601 timestamp in the local timezone, or one formatted per the OP,
// return the time in seconds since 1970-01-01T00:00:00Z
function toSecondsSinceEpochLocal(s) {
s = s.split(/[-A-Z :\.]/i);
var d = new Date(s[0],--s[1],s[2],s[3],s[4],s[5]);
return Math.round(d.getTime()/1000);
}
Si se deben acomodar segundos decimales, se requiere un poco más de esfuerzo para convertir la parte decimal a ms.