Ich beziehe mich auf die Testing Assertion Library: Ссылка
Sie können Sprachkettenassertionen wie folgt schreiben:
%Vor%expect () ist offensichtlich eine globale Funktion, "to.be" sieht wie zwei Eigenschaften aus, aber wie funktioniert der letzte Teil "false"? Ich erwarte, dass es ein Funktionsaufruf sein müsste:
%Vor%Ist das 2015 ES-Syntax? Ich kann keinen Hinweis darauf finden in Ссылка
Stack Overflow sagt, dass es nicht möglich ist: How to optionale Klammern beim Funktionsaufruf implementieren? (Funktionsüberladung)
Kann jemand etwas darüber sagen, wie so etwas umgesetzt wird?
Quellcode: Ссылка
Du kannst das (und viele andere Sachen) mit Object.defineProperty
machen. Hier ist ein einfaches Beispiel:
Mit Object.defineProperty
können Sie noch viel mehr tun. Sie sollten die MDN-Dokumente für Object.defineProperty
herunterladen Detail.
Tags und Links javascript function chai method-chaining