Promise resolve example

(async () => {
  const promises = [];
  promises.push(new Promise((resolve) => {
    resolve(1);
  }));
  promises.push(new Promise((resolve) => {
    resolve(2);
  }));
  const results = await Promise.all(promises);
  console.log(results);
})();
23 сентября 2021, 13:44

Get weekday name with intl

new Intl.DateTimeFormat('ru-RU', { weekday: 'short' }).format(new Date()) //пн
19 апреля 2021, 23:32

Get start and end of current hour in javascript

const date = new Date();
const d1 = new Date(
  date.getFullYear(),
  date.getMonth(),
  date.getDay(),
  date.getHours(),
  0,
  0,
  0,
);
const d2 = new Date(
  date.getFullYear(),
  date.getMonth(),
  date.getDay(),
  date.getHours(),
  59,
  59,
  999,
);

console.log(d1); // 2021-03-05T09:00:00.000Z
console.log(d2); // 2021-03-05T09:59:59.999Z
19 марта 2021, 12:22

Javascript end of week

function endOfWeek(date) {
    const lastday = date.getDate() - (date.getDay() - 1) + 6;
    return new Date(date.setDate(lastday));
}

const dt = new Date(); 
console.log(endOfWeek(dt).toString());
24 ноября 2020, 19:07

Javascript sleep promise

const sleep = (ms) => new Promise( (r) => setTimeout(r, ms));
29 августа 2020, 22:22

Javascript replace all

function replaceAll(string, search, replace) {
  return string.split(search).join(replace);
}
11 августа 2020, 11:09

Add one second to date in javascript

const currentDate = new Date("2020-07-28T17:23:47.568Z");
const dateSub = new Date(currentDate.getTime() + 1000);
console.log(dateSub.toISOString());
28 июля 2020, 20:22

Javascript transliteration library

Iuliia
import iuliia from "iuliia";

// list all supported schemas
for (let schemaName of iuliia.Schemas.names()) {
    console.log(schemaName);
}

// transliterate using specified schema
let source = "Юлия Щеглова";
iuliia.translate(source, iuliia.ICAO_DOC_9303);
// "Iuliia Shcheglova"

// or pick schema by name
let schema = iuliia.Schemas.get("wikipedia");
iuliia.translate(source, schema);
// "Yuliya Shcheglova"
20 мая 2020, 15:17

FadeIn without Jquery

el.classList.add('show');
el.classList.remove('hide');
.show {
  transition: opacity 400ms;
}
.hide {
  opacity: 0;
}
source
7 сентября 2019, 17:53

Map, for, spread javascript benchmark for copy array

copy for: 2508.226ms
copy map: 1188.982ms
copy spread: 1898.890ms
const map = [
  [1, 2, 3, 4, 5],
  [6, 7, 8, 9, 10],
  [11, 12, 13, 14, 15]
];
const n  = 10e6;

console.time('copy for');
for (let i = 0; i < n; i++) {
  const m = [];
  for (let row = 0; row < map.length; row++) {
    m[row] = [];
    for (let reel = 0; reel < map[row].length; reel++) {
      m[row][reel] = map[row][reel];
    }
  }
}
console.timeEnd('copy for');

console.time('copy map');
for (let i = 0; i < n; i++) {
  const m = map.map(a => a.map(item => item));
}
console.timeEnd('copy map');

console.time('copy spread');
for (let i = 0; i < n; i++) {
  const m = map.map(a => [...a]);
}
console.timeEnd('copy spread');
13 августа 2019, 13:29

Javascript chrome full screen mode

document.documentElement.webkitRequestFullscreen();
25 июля 2019, 10:20

Javascript break(2)

loop:
for(let i=0; i<10; i++) {
  for(let j=0; j<10; j++){
    console.log(i,j);
    if(j === 5) break loop;
  }
}
22 июля 2019, 15:22

Как передать json из шаблонизатора в javascript

<script type="application/json" id="json">{"json_data":"here"}</script>
<script>
$(function(){
    var json = JSON.parse($('#json').text());
});
</script>
19 декабря 2015, 03:45

Добавление и удаление элементов массива в javascript

10 декабря 2015, 21:29