如何使一个函数在javascript

时间:2019-05-14 04:13:14

标签: javascript node.js adonis.js

根据:https://github.com/ryanmcdermott/clean-code-javascript

他说“一个功能应该做一件事”,我正在练习用JavaScript编写干净的代码。我正在处理许多复杂的功能,而且非常混乱。我尝试将其整理为干净的代码,但是很难知道什么是最好的方法,并且找不到一些示例[复杂函数中]。

在我的示例中。我尝试分离storeData函数,但它根本不干净。

我的问题:如何将此功能分为清晰的代码[一个功能可以做一件事]

 async example({params, request, response}){
    const { status } = request.only('status');
    const { average } = request.only('average');
    const { id } = params;
    const { date_start } = request.only('date_start');
    if(status == 2 ){
      const { employee_id } = request.only('employee_id')
      //check if I get input as araay
      if(Array.isArray(employee_id)){
        // looping array input data 
        for(let i in employee_id) {
          try {
            const empId = employee_id[i];
            // query get some data 
            var example =  await Example
                                        .query()
                                        .last();
            //Query get Data
            var getData = await Data.find(id);
            //if else check something if not null assigned data  to variable
            if(example == null ){
              var lastValue = 0
            } else {
              example =  JSON.parse(JSON.stringify(example));
              var lastValue = example.data||0;
            }
            //set variable
            var today = moment().format('YYYYMMDDHHmmss');
            //set variable 
            var groupName = getData.vornr+ '-'+ id + '-'+today;
            //set variable
            let total = parseInt(lastValue) + parseInt(average);
            //store something into database [ Here I try to seperate store function]
            await HelpersSaleOrder.Store(id, empId, average, total, date_start, groupName);
          } catch (error) {
            //handle error
            return response.status(404).json({
              'status' : 404,
              'message' : 'not found'
            });
          }
        }
        //return json if success
        return response.status(200).json({
          'status' : 200,
          'message' : ' successs'
        });
      }
    } else {
      //handle error
      return response.status(404).json({
        'status' : 404,
        'message' : 'not found'
      });
    }
  }

我知道有些人不喜欢这种问题,但是如果您能帮助我,以便在我每次编码时都可以使用它作为您的概念,将不胜感激。

0 个答案:

没有答案