簡體   English   中英

如何在express js中將空白字段更改為null

[英]How to change blank fields to null in express js

如果 param 為空,我想將所有請求正文參數設為 null。 有什么辦法在express js.

{
  username: " ",
  password: ""
}

// 得到它

{
  username: null,
  password: null
}

也許你想在下面使用這個函數:

 let objects = { username: ' ', password: '', testing: [ { id: ' ', testing: 'testing' } ], obj: { key: ' ', value: 'value' } } function setEmptyToNull(obj) { Object.keys(obj).forEach(key => { if (Array.isArray(obj[key])) { obj[key].map(o => { if (typeof o === 'object') { setEmptyToNull(o); } }) } else if(typeof obj[key] ==='string') { if(obj[key].trim() === '') { obj[key] = null; } } else if(typeof obj[key] === 'object') { setEmptyToNull(obj[key]); } }); return obj; } console.log(setEmptyToNull(objects));

現在,如果您想在您的 express 應用程序中使用,那么您可以在您的自定義middleware設置該功能。 它看起來像下面的代碼:

app.use((req, res, next) => {
  if(req.body) {
    setEmptyToNull(req.body);
  };
  next();
});

設置自定義middleware ,現在req.body中鍵的每個value ,如果它是' '那么將被設置為null

我希望它能幫助你。

以最簡單的方式(如果你想改變原始對象本身)

let obj = {username:'' , password:''}
for(i in obj){
    if(obj[i] === '')
        obj[i] = null
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM