Skip to content

Instantly share code, notes, and snippets.

View SirSerje's full-sized avatar
🏠
Working from home

Serhii Viazkov SirSerje

🏠
Working from home
View GitHub Profile
@SirSerje
SirSerje / Comment.js
Last active June 15, 2018 16:12
home work on junior developer trainings. Small help for my friend
//Это просто функция, пока еще обычная функция без каких либо дополнительных опций. Единственное надо принять во внимание,
//на указатель this который в будущем как бы скажет в коде "используй переменную name из этого класса, а не извне"
function Comment( name = 'Default Comment', text = 'default description', url = 'none' ) {
this.name = name;
this.text = text;
this.url = url;
this.likes = 0;
}
//Ты говоришь что прототипом объекта Comment является объект в котором есть конструктор (он равен функции Коммент и есть
@SirSerje
SirSerje / lesson7.js
Last active February 13, 2020 21:24
Roman’s homework
class Message {
//Важный момент что мы передадим айди, чтобы потом по этому айди можно было достать элемент
constructor(title, body, author, id) {
this.title = title;
this.body = body;
this.author = author;
this.id = id;
}
//функция отображения. По сути месседж знает о принадлежащих ему ансерах. И сначала выводиться меседж а потом
@SirSerje
SirSerje / index.js
Last active July 5, 2018 20:20
@roman_mtb calendar example
const POSTS = [
{ id:1,
name: 'post dog',
date: {
time: [6, 3, 2018],
}
},
{ id:12,
name: 'post dog',
date: {
@SirSerje
SirSerje / example.js
Created July 5, 2018 20:58
How to filter array with similar object (small check of deep compare)
function getUniqueObject(nonUniqueArray) {
let result = [];
for (let i = 0; i < nonUniqueArray.length; i++) {
let currentItem = nonUniqueArray[i];
if (isObjectPresent(result, currentItem)) {
console.log('object is similar')
} else {
result.push(currentItem)
}
@SirSerje
SirSerje / es5.js
Last active September 24, 2018 13:18
'barking dog'
function Animal(name) {
this.name = name
}
Animal.prototype.getName = function() {
return this.name
}
function Dog(name) {
@SirSerje
SirSerje / docker-kill.txt
Last active March 18, 2021 22:11
Remove all docker's shit
kill all running containers with docker kill $(docker ps -q)
delete all stopped containers with docker rm $(docker ps -a -q)
delete all images with docker rmi $(docker images -q)
@SirSerje
SirSerje / withStorage.js
Created January 22, 2019 07:45 — forked from treyhuffine/withStorage.js
A higher-order component to access localStorage
import React from 'react';
const withStorage = (WrappedComponent) => {
class HOC extends React.Component {
state = {
localStorageAvailable: false,
};
componentDidMount() {
this.checkLocalStorageExists();
@SirSerje
SirSerje / hoc.js
Created January 22, 2019 08:09
simple hoc js usage
const highOrderComponent = (WrappedComponent) => {
class HOC extends React.Component {
render() {
return <WrappedComponent/>;
}
}
HOC.displayName = `HOC of ${WrappedComponent.displayName || WrappedComponent.name || 'Component'}`;
return HOC;
};
@SirSerje
SirSerje / index.js
Created June 24, 2019 13:26
react hoc example
//функция, которая формирует тему
const makeStyle = theme => ({
background: theme.mainColor,
})
//Сам ХОК
const WithStyle = styleParam => (WrappedComponent) => {
return class withStyleHOC extends React.Component {
render() {
const myProps = { someProp: 123 };
@SirSerje
SirSerje / composeOverPipe.js
Last active February 11, 2020 10:41
Any kind of FP tweaks
const trace=label=>value=>{
console.log(`${ label }: ${ value }`);
return value;
};
const simpleTrace = value => console.log(value);
const pipe = (...fns) => (args) => fns.reduce((arg, fn) => fn(arg), args);
const compose = (...fns) => (args) => fns.reduce((arg, fn) => fn(arg), args);
const mult = a => b => a*b;
const add = (a) => (b) => a+b;