راکت
حل شده

مشکل در نوشتن forEach

3 پاسخ

سلام دوستان من یه ارایه دارم

ارایه خودم رو میخوام پیمایش کنم و و مقدار خاصی رو از توش بکشم بیرون و روش عملیات انجام بدم

ارایه من اینه:

[
  {
    fieldname: 'ImageEvidence',
    originalname: 'Mask Group -6.png',
    encoding: '7bit',
    mimetype: 'image/png',
    destination: './public/uploads/medical/imags/2020/6/5',
    filename: '1592540204077-Mask Group -6.png',
    path: 'public\\uploads\\medical\\imags\\2020\\6\\5\\1592540204077-Mask Group -6.png',
    size: 162946
  },
  {
    fieldname: 'ImageEvidence',
    originalname: 'Mask Group -7.png',
    encoding: '7bit',
    mimetype: 'image/png',
    destination: './public/uploads/medical/imags/2020/6/5',
    filename: '1592540204095-Mask Group -7.png',
    path: 'public\\uploads\\medical\\imags\\2020\\6\\5\\1592540204095-Mask Group -7.png',
    size: 117935
  },
  {
    fieldname: 'ImageEvidence',
    originalname: 'Mask Group -11.png',
    encoding: '7bit',
    mimetype: 'image/png',
    destination: './public/uploads/medical/imags/2020/6/5',
    filename: '1592540204107-Mask Group -11.png',
    path: 'public\\uploads\\medical\\imags\\2020\\6\\5\\1592540204107-Mask Group -11.png',
    size: 164626
  },
  {
    fieldname: 'ImageEvidence',
    originalname: 'Mask Group 1780.png',
    encoding: '7bit',
    mimetype: 'image/png',
    destination: './public/uploads/medical/imags/2020/6/5',
    filename: '1592540204169-Mask Group 1780.png',
    path: 'public\\uploads\\medical\\imags\\2020\\6\\5\\1592540204169-Mask Group 1780.png',
    size: 150627
  },
  {
    fieldname: 'ImageEvidence',
    originalname: 'Mask Group -1 - Copy.png',
    encoding: '7bit',
    mimetype: 'image/png',
    destination: './public/uploads/medical/imags/2020/6/5',
    filename: '1592540204186-Mask Group -1 - Copy.png',
    path: 'public\\uploads\\medical\\imags\\2020\\6\\5\\1592540204186-Mask Group -1 - Copy.png',
    size: 150634
  }
]
[nodemon] restarting due to changes...
[nodemon] restarting due to changes...
[nodemon] restarting due to changes...
[nodemon] starting `babel-node app.js`
true
Connect Server at port 2020
Mongo Connected!
[
  {
    fieldname: 'ImageEvidence',
    originalname: 'Mask Group -6.png',
    encoding: '7bit',
    mimetype: 'image/png',
    destination: './public/uploads/medical/imags/2020/6/5',
    filename: 'Mask Group -6.png',
    path: 'public\\uploads\\medical\\imags\\2020\\6\\5\\Mask Group -6.png',
    size: 162946
  },
  {
    fieldname: 'ImageEvidence',
    originalname: 'Mask Group -7.png',
    encoding: '7bit',
    mimetype: 'image/png',
    destination: './public/uploads/medical/imags/2020/6/5',
    filename: 'Mask Group -7.png',
    path: 'public\\uploads\\medical\\imags\\2020\\6\\5\\Mask Group -7.png',
    size: 117935
  },
  {
    fieldname: 'ImageEvidence',
    originalname: 'Mask Group -11.png',
    encoding: '7bit',
    mimetype: 'image/png',
    destination: './public/uploads/medical/imags/2020/6/5',
    filename: 'Mask Group -11.png',
    path: 'public\\uploads\\medical\\imags\\2020\\6\\5\\Mask Group -11.png',
    size: 164626
  },
  {
    fieldname: 'ImageEvidence',
    originalname: 'Mask Group 1780.png',
    encoding: '7bit',
    mimetype: 'image/png',
    destination: './public/uploads/medical/imags/2020/6/5',
    filename: 'Mask Group 1780.png',
    path: 'public\\uploads\\medical\\imags\\2020\\6\\5\\Mask Group 1780.png',
    size: 150627
  },
  {
    fieldname: 'ImageEvidence',
    originalname: 'Mask Group -1 - Copy.png',
    encoding: '7bit',
    mimetype: 'image/png',
    destination: './public/uploads/medical/imags/2020/6/5',
    filename: 'Mask Group -1 - Copy.png',
    path: 'public\\uploads\\medical\\imags\\2020\\6\\5\\Mask Group -1 - Copy.png',
    size: 150634
  }
]

کدی که من مینویسم برای استخراج path از ارایه بالاست

req.files.forEach(item => console.log(item.path))

زمانی که مقدار رو لاگ میگیرم خروجی درسته
اما اگر بخوام بریزمش توی یک متغییر میگه پیدا نمیکنه!

میخوام بعد گرفتن یه سری عملیات مثل زیر روش انجام بدم ولی بهم میگه پیدا نمیکنه

req.files.forEach(item => item.path.replace(/\\/g, '/').replace(/\s/g, '').trim())
navid
navid
@navidRz
ثبت پرسش جدید

پاسخ‌ها

3
میلاد-م
میلاد-م
@milad

تخصص: توسعه‌دهنده رابط کاربری - Front-End

بهترین پاسخ

دستور رو به درستی نوشتید، منتها دقت کنید که تابع forEach همواره مقدار undefined رو بر می گردونه.
درین حالت شما نیاز دارید که از تابع map برای پیمایش و برگرداندن آرایه استفاده کنید.

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/GlobalObjects/Array/forEach
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/GlobalObjects/Array/map

تفاوت این دو:
https://www.freecodecamp.org/news/4-main-differences-between-foreach-and-map/

navid
navid
@navidRz

تخصص: node.js , FrontEnd

ممنونم از توضیحات کامل تون
@milad

میلاد-م
میلاد-م
@milad

تخصص: توسعه‌دهنده رابط کاربری - Front-End

خواهش میکنم، سرزنده باشین 👍

شاید پاسخ شما همین‌جا باشد

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام