亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將 res.json 返回的內容分配給 Node.js 中的變量

將 res.json 返回的內容分配給 Node.js 中的變量

牛魔王的故事 2023-12-14 14:28:07
我正在構建一個社交網絡 - 為此我使用 Node.js。我是這個主題的新手,這是我關于這個主題的第一篇文章,如果您理解我,我會很高興。在我的社交網絡中,我想使用一種包含在“npm”kmeans 算法中的算法。我嘗試將函數返回給我的內容保留在變量中,然后繼續進行計算。我認為這個問題很小,但我坐了幾個小時卻無法解決。我正在添加到目前為止我所做的代碼://kmeans.js fileconst kmeans = require('kmeans-engine');exports.addUserKmeansMatch = (req, res) => {  const engineers = [    // frontend engineers    { html: 5, angular: 5, react: 3, css: 3 },    { html: 4, react: 5, css: 4 },    { html: 4, react: 5, vue: 4, css: 5 },    { html: 3, angular: 3, react: 4, vue: 2, css: 3 },    // backend engineers    { nodejs: 5, python: 3, mongo: 5, mysql: 4, redis: 3 },    { java: 5, php: 4, ruby: 5, mongo: 3, mysql: 5 },    { python: 5, php: 4, ruby: 3, mongo: 5, mysql: 4, oracle: 4 },    { java: 5, csharp: 3, oracle: 5, mysql: 5, mongo: 4 },    // mobile engineers    { objc: 3, swift: 5, xcode: 5, crashlytics: 3, firebase: 5, reactnative: 4 },    { java: 4, swift: 5, androidstudio: 4 },    { objc: 5, java: 4, swift: 3, androidstudio: 4, xcode: 4, firebase: 4 },    { objc: 3, java: 5, swift: 3, xcode: 4, apteligent: 4 },    // devops    { docker: 5, kubernetes: 4, aws: 4, ansible: 3, linux: 4 },    { docker: 4, marathon: 4, aws: 4, jenkins: 5 },    { docker: 3, marathon: 4, heroku: 4, bamboo: 4, jenkins: 4, nagios: 3 },    { marathon: 4, heroku: 4, bamboo: 4, jenkins: 4, linux: 3, puppet: 4, nagios: 5 }  ];  kmeans.clusterize(engineers, { k: 4, maxIterations: 5, debug: true }, (err, result) => {    res.json(result.clusters)    .then((data) => {    let resultCluster = data; //<--- I want to perform a calculation on the object and then return it.      res.json(resultCluster)    })    .catch((err) => {      console.error(err);      return res.status(500).json({ error: err.code });    });  })};問題是:我想將 kmeans.clusterize 函數返回的信息插入到 resultCluster 對象中。我無法將信息輸入到 resultCluster 中。然后我想使用 resultCluster 執行計算并返回我將在 resultCluster 計算中得到的結果。
查看完整描述

1 回答

?
青春有我

TA貢獻1784條經驗 獲得超8個贊

您調用了res.json()兩次,并且無緣無故地使用了 Promise 語法。應該很簡單

kmeans.clusterize(engineers, { k: 4, maxIterations: 5, debug: true }, (err, result) => {

  if (err) {

    console.error(err);

    res.status(500).json({ error: err.code });

  } else {

    const data = result.clusters; 

    … // perform a calculation on the object

    res.json(data);

  }

})


查看完整回答
反對 回復 2023-12-14
  • 1 回答
  • 0 關注
  • 161 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號