2017-06-19 13 views
-5

私はこの2つの機能を以下に理解していません。彼らは関数(done)である引数を使い、その関数の中で関数を呼び出します。どのようなタイプの機能で、どのように動作するのか教えてください。ありがとうございました!Javascript:誰も私にこのコードブロックを説明できますか?

beforeEach((done) => { 
    Todo.remove({}).then(() => done()); 
}); 

describe('POST /todos',() => { 
    it('should creat a new todo', (done) => { 
     var text = 'Test todo text'; 

     request(app) 
      .post('/todos') 
      .send({text}) 
      .expect(200) 
      .expect((res) => { 
       expect(res.body.text).toBe(text); 
      }) 
      .end((err, res) => { 
       if (err) { 
        return done(err); 
       } 

       Todo.find().then((todos) => { 
        expect(todos.length).toBe(1); 
        expect(todos[0].text).toBe(text); 
        done(); 
       }).catch((e) => done(e)); 
      }) 
    }) 
}); 
+0

我々がそうであれば、使用されているもののフレームワーク、非ネイティブの機能があり、および/または何をすべきか知っている、としていないとして、それを説明する方法はありません。 – Dellirium

答えて

2

この

が正規の一種である機能の種類を教えてください。

とその仕組み

JSの関数はファーストクラスのオブジェクトです。あなたは他の値と同じようにそれらを渡すことができます。

function a_function() { 
 
    alert("This is a function"); 
 
} 
 

 
function give_me_a_callback(some_function) { 
 
    some_function(); 
 
} 
 

 
give_me_a_callback(a_function);

関連する問題