2017-01-17 7 views
0

Я сделал эту функцию:Firefox и Safari "неожиданный '*' маркер", а не в хроме

changeTimeFormat :function(timeCode){ 
    var timeCodes = timeCode.split(/[:.]+/), 
     hh = timeCodes[0], 
     mm = timeCodes[1], 
     ss = timeCodes[2], 
     msmsms = timeCodes[3], 
     newTimeCode = (hh * 60**2) + (mm * 60) + (ss*1) + (msmsms/1000); 
    return newTimeCode; 
} 

... Который получает определенный таймкод и меняет свой формат из HH: MM: SS, MsMsMs к SS.MsMs.

Это работает как шарм в Chrome, но Safari и FireFox вызывают выражение SyntaxError: ожидаемое выражение, получившее сообщение «*», касающееся первого знака «*» при загрузке скрипта. Любая идея почему? Благодарю.

+0

вам лучше использовать математические функции, я думаю, что сафари и firefox еще не поддерживали подобные алгебраические операции. – Roljhon

ответ

0

Я полагал, что ошибка происходит из-за 60**2 который я верил, не поддерживается в Firefox или сафари еще (пожалуйста, поправьте меня, если я ошибаюсь)

Другой способ Arround это использовать Math.pow(base,exponent)

changeTimeFormat :function(timeCode){ 
    var timeCodes = timeCode.split(/[:.]+/), 
    hh = timeCodes[0], 
    mm = timeCodes[1], 
    ss = timeCodes[2], 
    msmsms = timeCodes[3], 
    newTimeCode = (hh * Math.pow(60,2)) + (mm * 60) + (ss*1) + (msmsms/1000); 
    return newTimeCode; 
} 
+0

Спасибо. Так оно и было. – Tomcatom

+1

без проблем приятель :) goodluck! – Roljhon