- 1
- 2
- 3
- 4
- 5
- 6
- 7
function main() {
let arr = [1, 2, 3];
for (const v of arr.map(x => x + 1)) print(v);
print("done.");
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
0
function main() {
let arr = [1, 2, 3];
for (const v of arr.map(x => x + 1)) print(v);
print("done.");
}
Для тех кто не понял предыдущий пример.. я упростил для вас :)
+1
function test() {
const ws = new WebSocket('ws://127.0.0.1:445');
ws.addEventListener('close', event =>
console.log('event.code = ', event.code, '; event.reason = ', event.reason)
);
ws.close(3500, 'some reason');
}
test();
Кто угадает значения полей event.code и event.reason — тому два нихуя.
Кто угадает значение одного из полей — тому одно нихуя.
0
function main() {
let arr = [1, 2, 3];
const it =
(
function* iter() {
for (const v of arr)
yield ((x: typeof v) => x + 1)(v);
}
)();
for (const v of it) print(v);
print("done.");
}
продолжаем говнокодить... т.е. генерировать жуткое.. г-но :) ну как вам такой код? слабо?
0
function* map<T, R>(a: T[], f:(i: T) => R)
{
for (const v of a) yield f(v);
}
function main()
{
let count = 0;
for (const v of map([1, 2, 3], (i) => { count++; return i + 1; }))
{
print(v);
}
assert(count == 3);
}
а ты, а ты так можешь на своем говно-с++ компиляторе ваять?
0
function fib<T>(n: T) {
return n <= 2 ? n : fib(n - 1) + fib(n - 2);
}
function main()
{
print (fib(5));
print (fib(6.0));
}
я вам принес "рекурсивные генерики"..... внимание вопрос... а каким таким хером получилось вычеслить тут возвращаемый тип, а ?
0
http://motherfuckingwebsite.com
<!-- yes, I know...wanna fight about it? -->
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-45956659-1', 'motherfuckingwebsite.com');
ga('send', 'pageview');
</script>
0
function some<T>(arr: T[], f: (it: T) => boolean) : boolean
{
let r = false;
for (const v of arr) if (r ||= f(v)) break;
return r;
}
function main() {
let str = [1.0, 2.0, 3.0];
assert(some(str, (x => x == 2.0)), "sometrue");
assert(!some(str, (x => x < 0)), "somefalse");
print("done.");
}
Ну что скажите про мои "генерики" ? вам нравиться? А кто знает какой челенж я тут проходил пока написал эту часть компилятора... (даю подстказку - проблема в определении типов для лямбды)
0
function main() {
print("testArrayFoEach");
[1, 2, 3].forEach(x => print(x))
print("done.");
}
вот... проимплементил ненужную никому хрень :) чето я устал дампики постить.. и так поймете все что надо :)
+3
public getWay(path: string) {
const arrPath = path.slice(1).split('/');
arrPath.map(item => {
this.crumbs.push(MathcPath[item]);
this.crumbs = this.crumbs.filter(crumb => crumb);
});
}
Используем map в качестве forEach + зачем-то фильтруем полученный массив в каждой итерации.
Причем этот код можно записать в одну строку, которая еще и будет работать быстрее.
0
// @strict: true
// @lib: es2020
// @declaration: true
type BadFlatArray<Arr, Depth extends number> = {
obj: {
"done": Arr,
"recur": Arr extends ReadonlyArray<infer InnerArr>
? BadFlatArray<InnerArr, [-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]>
: Arr
}[Depth extends -1 ? "done" : "recur"]
}["obj"];
declare function flat<A, D extends number = 1>(
arr: A,
depth?: D
): BadFlatArray<A, D>[]
function foo<T>(arr: T[], depth: number) {
return flat(arr, depth);
}
function main() {
foo<number>([1.0, 2.0], 2);
}
спорим вы нихрена не поняли что это такое?