Size: a a a

JavaScript Noobs — сообщество новичков

2020 December 03

В

Вячеслав in JavaScript Noobs — сообщество новичков
ну типа бритва окама и всё такое, вот с чего я реально прихуел что вы вообще это КАК задачу восприняли
источник

j

jk in JavaScript Noobs — сообщество новичков
Аналогично. Очевидный сарказм же.
источник

В

Вячеслав in JavaScript Noobs — сообщество новичков
дальше у нас будет
2 + 2 * 2 чему равно?
источник

В

Вячеслав in JavaScript Noobs — сообщество новичков
хотя, не у меня есть кое что поинтереснее
источник

A

Alex in JavaScript Noobs — сообщество новичков
Кристина Глазебная
это вот что
public createdTableArr: { dailyCalories: number; id: number; time: string; eating: string }[];
Хотя нет, выше глупость предложил) Просто так:
changeValueTimes(value, id): void {
 const timeValue = value.target.value;
 this.createdTableArr = this.createdTableArr.map((item) => (
   item.id === id ? { ...item, time: timeValue } : item
 ));
}
источник

КГ

Кристина Глазебная... in JavaScript Noobs — сообщество новичков
Alex
Проверь консоль после этого:
changeValueTimes(value, id): void {
 const timeValue = value.target.value;
 this.createdTableArr = this.createdTableArr
   .filter((item) => item.id === id)
   .map((item) => ({ ...item, time: timeValue }));
}
изменения есть только в том, что теперь в массиве только тот объект который поменялся, но даже если я беру типо этот изменыый массив, то в след функции где я имзеняю другое свойство , то массив береться снова старый а не изменный
источник

КГ

Кристина Глазебная... in JavaScript Noobs — сообщество новичков
Alex
Хотя нет, выше глупость предложил) Просто так:
changeValueTimes(value, id): void {
 const timeValue = value.target.value;
 this.createdTableArr = this.createdTableArr.map((item) => (
   item.id === id ? { ...item, time: timeValue } : item
 ));
}
ща попробую)
источник

A

Alex in JavaScript Noobs — сообщество новичков
Кристина Глазебная
изменения есть только в том, что теперь в массиве только тот объект который поменялся, но даже если я беру типо этот изменыый массив, то в след функции где я имзеняю другое свойство , то массив береться снова старый а не изменный
Посмотри моё последнее сообщение) Я ошибся выше
источник

A

Alex in JavaScript Noobs — сообщество новичков
Окич
источник

A

Alex in JavaScript Noobs — сообщество новичков
Но если даже в том примере в след функции значение возвращается к старому, то что-то не так где-то в другом месте, значит
источник

j

jk in JavaScript Noobs — сообщество новичков
Ещё надо быть аккуратнее с мутациями и console.log.
источник

L

Lupusregina[beta] in JavaScript Noobs — сообщество новичков
ладно
источник

В

Вячеслав in JavaScript Noobs — сообщество новичков
const F = function() {
 return {
   toString: () => F.n++,
 }
}
F.n = 1;

console.log(F() + F() * F());

что будет в консоли и почему? ясен хрен ответ дать не запуская
источник

L

Lupusregina[beta] in JavaScript Noobs — сообщество новичков
дам еще одну гиганскую подсказку
источник

L

Lupusregina[beta] in JavaScript Noobs — сообщество новичков
function* sleep(ms, val) {
 return yield new Promise(r => setTimeout(() => r(val), ms))
}
function* test(fl) {
 if ( fl ) {
   const val = yield* sleep(1000, 'reg')
   console.log({ val })
 }
 return 0
}
function* test2() {
 Promise.resolve().then(() => console.log('after'))
 
 console.time('test')
 for(let i = 0; i < 1e6; i++) {
   yield* test()    
 }
 console.timeEnd('test')
 
 Promise.resolve().then(() => console.log('before sleep'))
 const result = yield* test(1)
 console.log( {result} )
}
asyncWrapper(test2)
источник

A

Alex in JavaScript Noobs — сообщество новичков
В том и дело, что я не вижу, как она в консоль выводит)
источник

L

Lupusregina[beta] in JavaScript Noobs — сообщество новичков
Lupusregina[beta]
function* sleep(ms, val) {
 return yield new Promise(r => setTimeout(() => r(val), ms))
}
function* test(fl) {
 if ( fl ) {
   const val = yield* sleep(1000, 'reg')
   console.log({ val })
 }
 return 0
}
function* test2() {
 Promise.resolve().then(() => console.log('after'))
 
 console.time('test')
 for(let i = 0; i < 1e6; i++) {
   yield* test()    
 }
 console.timeEnd('test')
 
 Promise.resolve().then(() => console.log('before sleep'))
 const result = yield* test(1)
 console.log( {result} )
}
asyncWrapper(test2)
ля, это гениально, хД
источник

L

Lupusregina[beta] in JavaScript Noobs — сообщество новичков
Lupusregina[beta]
function* sleep(ms, val) {
 return yield new Promise(r => setTimeout(() => r(val), ms))
}
function* test(fl) {
 if ( fl ) {
   const val = yield* sleep(1000, 'reg')
   console.log({ val })
 }
 return 0
}
function* test2() {
 Promise.resolve().then(() => console.log('after'))
 
 console.time('test')
 for(let i = 0; i < 1e6; i++) {
   yield* test()    
 }
 console.timeEnd('test')
 
 Promise.resolve().then(() => console.log('before sleep'))
 const result = yield* test(1)
 console.log( {result} )
}
asyncWrapper(test2)
надо написать asyncWrapper
источник

L

Lupusregina[beta] in JavaScript Noobs — сообщество новичков
Lupusregina[beta]
function* sleep(ms, val) {
 return yield new Promise(r => setTimeout(() => r(val), ms))
}
function* test(fl) {
 if ( fl ) {
   const val = yield* sleep(1000, 'reg')
   console.log({ val })
 }
 return 0
}
function* test2() {
 Promise.resolve().then(() => console.log('after'))
 
 console.time('test')
 for(let i = 0; i < 1e6; i++) {
   yield* test()    
 }
 console.timeEnd('test')
 
 Promise.resolve().then(() => console.log('before sleep'))
 const result = yield* test(1)
 console.log( {result} )
}
asyncWrapper(test2)
еще если не заметили, можно обратить внимание на промис с after
источник

L

Lupusregina[beta] in JavaScript Noobs — сообщество новичков
он выполнится после цикла, то есть из стека фнкция не выйдет
источник