1030
falan gibi datalarım var diyelim.
ben bunların son 2 hanesnden önce : eklemek istiyorum.
yani öyle bir filtreden geçireyim ki, bana verdiği sonuç:
9:30
10:30 vs. gibi dönüşsün.
nasıl yapabilirim acaba?
şöyle bir şey buldum:
String.prototype.splice = function(idx, rem, str) {
return this.slice(0, idx) + str + this.slice(idx + Math.abs(rem));
};
var result = "foo baz".splice(4, 0, "bar ");
document.body.innerHTML = result; // "foo bar baz"
burada işte (4, 0, "bar"); kısmını değiştirmeniz lazım, stringdeki harf sayısını sayıp sondan ikinciden bölüp iki nokta ekleyeceksiniz...
regex ile cozebilirsin.
str.replace(/(\d+)(\d{2})/,"$1:$2");
<span class="spHour">900</span>
<span class="spHour">1030</span>
böyle olduğunu varsayarsak ve jquery ile olsun istiyosan:
for(var i = 0; i < $(".spHour").length; i++)
{
var textVal = $(".spHour")[i].innerText;
var res = [textVal.slice(0, textVal.length - 2), ':', textVal.slice(textVal.length - 2)].join('');
$(".spHour")[i].innerText = res;
}