Alexander
У пустого массива (new Array(length) ) никаких собственных ключей кроме length нет
Quiet
Проверяется просто есть ключ в объекте или нет
Можно и явно указать if(obj.bar) если известно какие ключи есть
Alexander
Это [[Get]] значения по ключу
Alexander
И затем его приведение к Boolean
👨🏼‍💻
Почему нативный map тяжелее форыча?
потому-что мап создает новый массив, а форыч работает с предыдущем. сложность разная
👨🏼‍💻
Нет. Выше ответили про HasProperty
мап и форыч итерационные методы. Я че-т сомневаюсь, что там проверка на проперти есть
Alexander
Нет. Выше ответили про HasProperty
Ну начнем с того что ты форычем обычный for называешь почему-то
Alexander
Пролистай
Анатолий
А для объектов map ещё не завезли? Не обещали?
Анатолий
что-то типа такого {q: 2, w: 3}.map((k, v) => v * 2) // [4, 6]
Анатолий
возможно пятница и я туплю, потому что я был уверен, что нечто подобное в жс уже есть
Анатолий
и ещё вопрос, кто следит за последними новостями: что насчёт интерполяции переменных? var param = 'qwe'; console.log($'param is {param}') //param is qwe
Анатолий
Анатолий
Есть такое. В гугле моментально синтаксис найдёшь.
уиии! да это просто праздник какой-то
Marat
может, кто помочь работа с массивом&
Marat
надо 2 массива объед. 3 через 3 1) [числа от 1 до N] 2) [имена от 1 до n] 3) 3 через 3 4) результат в виде: [Число1 - Имя1,Число2 - Имя1, Число3 - Имя1,Число4 - Имя2,Число5 - Имя2, Число6 - Имя2, ...(в строках все)]
Ilya
reduce метод вам в помощь
Ilya
изучите его возможности.
Ilya
подсказка - на вход, методу в качестве его аргумента вы можете передать нечто предварительно подготовленное, в вашем случае - результат обработки первого массива при применении на втором
Marat
Что уже сделал?
------ [ 'Misha', 'Dima' ] 3 22-12-2017 ------ [ 22, 23, 24, 25, 26, 27, 28, 29, 30, 31 ] получил имена и числа, дальше никак(
Rinat
тебе надо в аккумуляторе передавать новый массив и делать необходимые манипуляции в процессе
Rinat
на выходе ты должен получить новый массив
Marat
на выходе ты должен получить новый массив
блин как-то через 2 цикла мучился
Ilya
блин как-то через 2 цикла мучился
а как ты представлял себе объединение двух массивов по нелинейным условиям :)
Ilya
у тебя есть требования по перфомансу операции ?
Ilya
т.е. надо сдеать так быстро насколько это возможно ? или в принципе - надо сделать ?
Marat
кабы нет
Ilya
смотря как алгоритмически оформить
Ilya
я сразу отправил в reduce, но тут есть несколько подходов
Ilya
первый - последовательная обрабтка двух массивов с предоставлением результата первого прохода на вход второго reduce
Ilya
логика - будет более наглядной
Ilya
можно и с одним проходом - но тут надо будет поколдовать
Rinat
ну я на вскидку представил newArr[currentIndex] = currentItem + num + otherArr[currentIndex]
Ilya
Marat - дай дава массива примера
Marat
Marat - дай дава массива примера
[ 'Misha', 'Dima' ] 3 ------ [ 22, 23, 24, 25, 26, 27, 28, 29, 30, 31 ]
Marat
3-ка значит через 3
Marat
[ '22-Misha', '23-Misha', '24-Misha', '25-Dima', 26-..., 27, 28, 29, 30, 31 ]
Marat
на динамике поплыл)
Rinat
let arr1 = [ 'Foo', 'Bar' ] let arr2 = [ 31337, 1 ] let newArr = [] arr1.reduce( (acc, val, index) => { newArr[index] = `${val}-crzy-string-idon-carefor-${arr2[index]}`; }, [] ); console.log(newArr)
Rinat
на выходе [ 'Foo-crzy-string-idon-carefor-31337', 'Bar-crzy-string-idon-carefor-1' ]
Rinat
ну суть ясна должна быть
Marat
Спс пробну
Rinat
можно и с одним проходом - но тут надо будет поколдовать
вон посмотри, колдовство минимальное
Rinat
но естественно надо чтобы в массивах было одинаковое количество элементов и чтобы они были с примитивами
Ilya
в общем всё это "разруливается" тут не хватает входных условий по пограничным случаям.
Ilya
reduce - рулит !
Ilya
сложный но очень полезный метод
Ilya
и есть тут еще один момент, Marat - в формировании исходных массивов ваш код принимает участие ?
Ilya
на момент формирования массива с числами - массив имен вам доступен ?
Marat
да
Ilya
тогда вы при формирорвани массива числел, можете невозбранно - формировать и ваш целевой "массив пар имя-число".
Ilya
во времени - требование такого формирования - непредсказуемо ? или вы можете держать в памяти подготовленный вариант ?
Marat
могу
Ilya
ну тогда что вам мешает при формировании массива чисел, каждые три следующих передавать в очередь, для конкатенации с именем ?
Ilya
когдла оно поступит - обрабатывайте "плоской логикой" - PROFIT !!!
Ilya
и сама по себе задача - хитросплетения массивов на каком-то чекпойнте отпадает
Marat
)
Anonymous
fs.copyFile("allax1.txt","copy.txt",err=>{})
Anonymous
Anonymous
чому так ?
Alex
Русская буква?
Anonymous
не
Anonymous
копировал даже оф ехампле
Anonymous
fs.copyFile('source.txt', 'destination.txt', (err) => { if (err) throw err; console.log('source.txt was copied to destination.txt'); });
Alex
fs не импортируется в файле правильно возможно
Anonymous
синхроное копирование тоже не работает