This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
interface InjectionInstanceInterface { | |
[key: string]: any; | |
} | |
interface ClassRef<T> extends Function { | |
new (...args: any[]): T; | |
} | |
class InjectService { | |
private instances: InjectionInstanceInterface = {}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Parse template string | |
* | |
* @usage parseTemplate(`my name is {name} {nested.name}`, {name: 'foo', nested: { name: 'bar' }}) | |
* @param template string | |
* @param data object | |
* @returns string | |
*/ | |
export function HelperParseTemplate(template: string, data: any): string { | |
return template.replace(/\{([\w\\.]*)\}/g, (str: string, key: string) => { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
version: '3.8' | |
services: | |
db: | |
image: mysql | |
container_name: db | |
environment: | |
MYSQL_ROOT_PASSWORD: ${DB_PASSWORD} | |
MYSQL_DATABASE: ${DB_DATABASE} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
type UserUrl = string; | |
// const getUserUrl = (id: number) => { | |
// return `/user/${id}`; // as const | |
// }; | |
// type UserUrl = ReturnType<typeof getUserUrl>; | |
const url: UserUrl = '/user/2'; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// The Adapter pattern is a structural design pattern that allows objects with incompatible interfaces to work together. | |
interface NotificationInterface { | |
send(subject: string, message: string): boolean; | |
} | |
class EmailNotification implements NotificationInterface { | |
send(subject: string, message: string): boolean { | |
console.log(`Sending email notification: ${subject} ${message}`); | |
return true; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Guard Clause is a technique derived from the fail-fast method | |
// whose purpose is to validate a condition and immediately stop the code execution | |
// about the result of the validation. | |
// Using guard clauses is a common and clean technique for simplifying the code block and avoiding unnecessary complexity. | |
// Example 1 | |
const submitForm = (formData, formMeta) => { | |
if (!formMeta.hasError(formData)) { | |
formData.submit(); | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// 1 | |
console.log(typeof typeof 1); | |
// 2 | |
console.log(018 - 015); | |
// 3 | |
const numbers = [33, 2, 8]; | |
numbers.sort(); | |
console.log(numbers[1]); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
version: '3.8' | |
services: | |
mongo: | |
image: mongo:latest | |
volumes: | |
- ./.data/mongodb:/data/db | |
environment: | |
MONGO_INITDB_ROOT_USERNAME: root |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// webpack/modules/babel-loader-rule.js | |
module.exports = { | |
test: /\.js$/, | |
exclude: /(node_modules|bower_components)/, | |
use: { | |
loader: 'babel-loader', | |
options: { | |
presets: [ | |
['@babel/preset-env', { targets: "defaults" }] | |
] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
An array A consisting of N integers is given. Rotation of the array means that each element is shifted right by one index, and the last element of the array is moved to the first place. For example, the rotation of array A = [3, 8, 9, 7, 6] is [6, 3, 8, 9, 7] (elements are shifted right by one index and 6 is moved to the first place). | |
The goal is to rotate array A K times; that is, each element of A will be shifted to the right K times. | |
Write a function: | |
function solution(A, K); | |
that, given an array A consisting of N integers and an integer K, returns the array A rotated K times. |
NewerOlder