Skip to content

Instantly share code, notes, and snippets.

View ins77's full-sized avatar

Дима Сухинин ins77

View GitHub Profile
@ins77
ins77 / History|-1076b9ec|entries.json
Created August 18, 2025 12:41
Visual Studio Code Settings Sync Gist
{"version":1,"resource":"file:///Users/home/Desktop/work/frontend/apps/website/Content/j/i18n/translations/lang.en.json","entries":[{"id":"ygHx.json","timestamp":1755509692514}]}
@ins77
ins77 / countTime.js
Created April 25, 2020 11:26
countTime
const countTime = (queue, windowsCount) => {
if (windowsCount >= queue.length) return Math.max(...queue)
const windowsArr = new Array(windowsCount).fill(0)
for (let i = 0; i < queue.length; i++) {
const minValue = Math.min(...windowsArr)
const minValueIndex = windowsArr.findIndex(value => value === minValue)
const idx = i >= windowsCount ? minValueIndex : i
@ins77
ins77 / reverseInt.js
Created April 25, 2020 11:25
reverseInt
const reverseInt = (num) => {
const reverseNum = Math.abs(num).toString().split('').reverse().join('');
return num < 0 ? '-' + reverseNum : reverseNum;
}
reverseInt(-2578);
@ins77
ins77 / isHappyTicket.js
Created April 25, 2020 11:25
isHappyTicket
const getFirstHalfNumber = (ticket) => {
const half = ticket.length / 2;
const number = ticket.slice(0, half);
let sum = 0;
for (let i = 0; i < half; i += 1) {
sum += Number(number[i]);
}
@ins77
ins77 / counter.js
Created April 25, 2020 11:24
counter
const counter = (count => () => count++)(1);
counter();
counter();
// function counter() {
// if (counter.n === undefined) {
// counter.n = 1;
// } else {
// counter.n += 1;
@ins77
ins77 / convertBinaryToDecimal.js
Created April 25, 2020 11:24
convertBinaryToDecimal
const convertBinaryToDecimal = arr => (
arr.reduce((acc, current, index) => (
acc + current * Math.pow(2, arr.length - index - 1)
), 0)
);
convertBinaryToDecimal([1,1,1,1,1,1,1,1]);
@ins77
ins77 / deleteTextNodes.js
Created April 25, 2020 11:23
deleteTextNodes
let where = document.createElement('div');
where.innerHTML = ` <div></div>123abc<p></p>dsak*&^&^!@`;
const deleteTextNodes = (where) => (
[...where.childNodes].filter(node => {
console.log('####node', node.nodeName);
return node.nodeType === 1;
})
@ins77
ins77 / getArr.js
Created April 25, 2020 11:23
getArr
const getArr = (arr1, arr2) => {
if (!arr1.length || !arr2.length) {
return [];
}
const set1 = new Set(arr1);
const set2 = new Set(arr2);
console.log([...set1]);
@ins77
ins77 / magic.js
Created April 25, 2020 11:23
magic
const magic = (...rest) => {
const sum = rest.reduce((acc, current) => acc + current, 0);
const inner = (...args) => {
return magic(inner.valueOf(), ...args);
};
inner.valueOf = () => sum;
return inner;
};
@ins77
ins77 / zadachi.js
Created April 25, 2020 11:22
zadachi
// Добавьте всем функциям в прототип метод defer(ms), который возвращает обёртку, откладывающую вызов функции на ms миллисекунд.
// Например, должно работать так:
// function f(a, b) {
// alert( a + b );
// }
// f.defer(1000)(1, 2); // выведет 3 через 1 секунду.
// Пожалуйста, заметьте, что аргументы должны корректно передаваться оригинальной функции.
// http://learn.javascript.ru/native-prototypes#tasks