Tag Archives: javascript

String format (JavaScript)

String.prototype.format = function() { var a = arguments; return this.replace(/\{\d+\}/g, function©{ return a[c.match(/\d+/)]; }); }   // usage: var str = ‘Hello, {0}! You are {1}!’; str.format(‘friend’, ‘awesome’); // Hello, friend! You are awesome!String.prototype.format = function() { var a = arguments; return this.replace(/\{\d+\}/g, function©{ return a[c.match(/\d+/)]; }); } // usage: var str = ‘Hello, {0}! You […]

Bytes to Readable format (JavaScript)

function formatSize(v, c) { v = parseInt(v, 10); for(c = 0; v > 1024; c++) v = (v / 1024).toFixed(2); return v + ’ ’ + [‘B’, ‘kB’, ‘MB’, ‘GB’, ‘TB’, ‘PB’, ‘EB’, ‘ZB’, ‘YB’][c] }function formatSize(v, c) { v = parseInt(v, 10); for(c = 0; v > 1024; c++) v = (v / 1024).toFixed(2); […]

Функция обнаружения коллизий объектов (JavaScript)

Дан­ная функ­ция поз­во­ля­ет опре­де­лить пере­се­че­ние (кол­ли­цию) двух объ­ек­тов (сфер / окруж­но­стей): function $_collision(a, b) { var c = a.x — b.x, d = a.y — b.y, e = a.r + b.r; return c * c + d * d <= e * e }   $_collision({ x: 150, y: 200, r: 100 }, { x: […]

функция расширения объекта (JavaScript)

function $_extend(o, a, y) { for (y in a) o[y] = a[y]; return o }   var obj1 = {a: 1, b: 2, c: 3}; var obj2 = {x: ‘a’, y: ‘b’, z: ‘c’}; var new_obj = $_extend(obj1, obj2); console.log(new_obj); // {a: 1, b: 2, c: 3, x: ‘a’, y: ‘b’, z: ‘c’}function $_extend(o, a, […]

Faster Math.abs()

Более быст­рый ана­лог Math.abs() в JavaScript: function abs(n) { return n < 0 ? -n : n }   abs(-10); // 10function abs(n) { return n < 0 ? -n : n } abs(-10); // 10 P.S.: При­ве­ден­ный выше метод целе­со­браз­но исполь­зо­вать в очень боль­ших цик­лах и (конеч­но же) луч­ше делать это не через вызов функ­ции […]

soundcloud dl+

Нач­ну с того, что сам я не явля­юсь посто­ян­ным поль­зо­ва­те­лем soundcloud, но тут уви­дел пост дядь Миши с ссыл­кой на его userscript (soundcloud dl) и решил его “про­сто отре­фак­то­рить”… По-нача­лу, я испра­вил регу­ляр­ные выра­же­ния. Сде­лал гене­ри­ва­ние ссыл­ки через jQuery (коли он там есть). Пере­ста­вил ссыл­ку в дру­гие место что­бы не раз­дви­гать кон­тент почем зря. Убрал […]

console.log || alert

Рабо­тая над про­то­ти­па­ми JavaScript-ядра для веб-при­ло­же­ния с рабо­чим назва­ни­ем «Scratch», пере­о­ди­че­ски при­хо­дит­ся исполь­зо­вать функ­цию console.log() (FireFox-пла­ги­на FireBug) для отлад­ки JS-сце­на­ри­ев. Каза­лось бы всё хоро­шо, но моим люби­мым бра­у­зе­ром уже мно­го лет явля­ет­ся Opera, а пол­но­цен­но­го пла­ги­на FireBug для него, как вы зна­е­те, нет. При этом, исполь­зо­вать аль­тер­на­тив­ные реше­ния типа FireBug-lite и Dragonfly до сей день […]

Таааккк, ты мне дашь или не дашь?

Порою, воз­ни­ка­ет необ­хо­ди­мо­сть ско­пи­ро­вать какой-то фраг­мент текста со стра­ни­цы (выде­лив его мыш­кой и сде­лав  “копи­ро­вать” (CTRL+C) / “вста­вить” (CTRL+V)). Зада­ча согла­си­тесь три­ви­аль­ная, но неко­то­рые сай­ты (напри­мер, lyrics.com) исполь­зу­ют раз­лич­ные мето­ды защи­ты от копи­ро­ва­ния текста. А что делать, если очень надо? С такой про­бле­мой сего­дня обра­ти­лась ко мне подруж­ка из Гер­ма­нии. Дей­стви­тель­но, кому понра­вит­ся, если ему […]