LINUX.ORG.RU

Присвоенный порядок переменных меняется местами непонятно где

 ,


0

1
let y12, y11, x12, x11, bv;
…………………………..
app.post('/init', (req, res) => {
    ({ y12, y11, x12, x11, bv } = req.body);
    console.log('После присваивания:', { y12, y11, x12, x11, bv });
      console.log(`y12 = ${y12}`);
       console.log(`y11 = ${y11}`);
       console.log(`x12 = ${x12}`);
       console.log(`x11 = ${x11}`);
       console.log(`xv = ${xv}`);
       console.log(`bv = ${bv}`);
});

function FFF(y12, y11, x12, x11, xv, bv) {
   if (y12 === undefined || y11 === undefined || x12 === undefined || x11 === undefined || bv === undefined) {
    // Code to execute if any variable is undefined
       console.log('После вызова FFF:', { y12, y11, x12, x11, xv, bv });
   } else {
       console.log(`y12 = ${y12}`);
       console.log(`y11 = ${y11}`);
       console.log(`x12 = ${x12}`);
       console.log(`x11 = ${x11}`);
       console.log(`xv = ${xv}`);
       console.log(`bv = ${bv}`);
    const deltaX = x12 - x11;
    const deltaY = y12 - y11;
    const m = deltaY / deltaX;
    const Uvel = (m * xv + bv);
    return parseFloat(Uvel.toFixed(1)); 
   }
}; 

самый прикол

$ node item.js
Server is running on port 3000
После присваивания: { y12: 12.3, y11: 4.02, x12: 3.03, x11: 0.9, bv: 0.526 }
y12 = 12.3
y11 = 4.02
x12 = 3.03
x11 = 0.9
xv = 0
bv = 0.526

а это выхлоп FFF(y12, y11, x12, x11, xv, bv)
y12 = 0.9
y11 = 3.03
x12 = 4.02
x11 = 12.3
xv = 1.911 это верно
bv = 0.526 это верно
в верных вариантах вопрос, xv bv меняю местами а числовые значения как присохли к своим местам. Пчему порядок переменных нарушается?

Надо посмотреть порядок переменных в том месте кода где этот код вызывается!!!

Проблема решена!!!

saufesma
() автор топика

Js не сортирует ключи объекта - это нормальное поведение. Если нужно сортировать их, то собери ключи объекта в отдельный массив, отсортируй его, и итерируйся по нему.

skyman ★★★★★
()
  • Markdown
Пустая строка (два раза Enter) начинает новый абзац. Знак '>' в начале абзаца выделяет абзац курсивом цитирования.
Внимание: прочитайте описание разметки Markdown.
Используйте Ctrl-Enter для размещения комментария