- 프로패셔널 소프트웨어 - 개발 짧은 스케줄, 뛰어난 상품, 성공적인 프로젝트, 경력 개발을 위해
- 실용주의 프로그래머
- 맨 먼스 미신
- 프로그래밍 심리학
- 내 코드가 그렇게 이상한가요 - 좋은 코드/나쁜 코드로 배우는 설계 입문
- 크리에이티브 프로그래머
export default function pathResolve(...paths: string[]) { | |
const parsedPaths = paths.flatMap((path) => path.split('/')).filter(Boolean); | |
const resolvedPaths = parsedPaths.reduce((previousValue, path) => { | |
if (path === '..') { | |
previousValue.pop(); | |
} else { | |
previousValue.push(path); | |
} |
data:text/html,<input type="color" onchange="document.bgColor=this.value"> |
type A = ['-', ...number[]] | |
let a = ['-', 1, 2, 3, 4] satisfies A | |
// You can type check in playground: | |
// https://www.typescriptlang.org/play?#code/C4TwDgpgBAglC8UDaByAtCgNFAdHgdgK4C2ARhAE5IC61AUHQDYTBQCGCy6WUAjNgCZsAZmwAWalADObYAEspAMzkQpsOkA |
function az() { | |
open `git remote get-url origin | | |
perl -pe 's#^git\@ssh\.dev\.azure\.com:v3/(.*)/(.*)$|^https://.*@dev.azure.com/(.*)/_git/(.*)$#https://dev.azure.com/\1\3/_git/\2\4#g'` | |
} |
let z = 1; | |
function *foo() { | |
const x = yield 2; | |
z++ | |
const y = yield (x*z) | |
console.log(x, y, z) | |
} | |
const it_first = foo() |
const bookmark = '.btn_important.on' | |
const interval = setInterval(function () { | |
const items = document.querySelectorAll('.mail_item') | |
for (const item of items) { | |
if (item.querySelector(bookmark) == null) item.querySelector('#mCk').click() | |
} | |
document.querySelector('.btn_del').click() | |
if ( | |
document.querySelector('.info_none') != null || |
const fetchMachine = Machine({ | |
initial: 'idle', | |
states: { | |
idle: { | |
on: { | |
SUBMIT: 'submit', | |
}, | |
}, | |
submit: { | |
on: { |
I hereby claim:
To claim this, I am signing this object: