When comparing Crafty.js vs Defold, the Slant community recommends Defold for most people. In the question“What are the best 2D game engines?” Defold is ranked 21st while Crafty.js is ranked 37th. The most important reason people chose Defold is:
Defold uses Lua, which is regarded as an easy to learn language by most.
Specs
Ranked in these QuestionsQuestion Ranking
Pros

Pro Eventbinding
Easy to learn, based on Entities and Components, the later being class-like objects that entities inherit.

Pro Javascript
Pro Modular
Has open function binding systems, allowing easy creation of custom components.
Pro Easy to learn
Defold uses Lua, which is regarded as an easy to learn language by most.
Pro Completely free of charge
Software and online dashboard are free of charge.
Pro Good combination of visual editing + code (Lua)
You can do a lot with drag and drop, but you're not limited -- the code (Lua, which is easy to learn) allows you more power than just visual editing usually gives you.
Pro Fast results
Going from idea to result is very important for the creative process.
Pro Visual editor
Pro Very performant
Being crossplatform it is important to work on low end devices.
Pro Easy and fast export for various platforms
Pro Great community
A very active and friendly community in forums.
Pro Source code available
You can download and modify the source code of the Editor and the engine for free.
Pro Collaborative
You can invite friends from the dashboard and create games together.
Pro Hot reload
It allows you to change scripts in a game while it is running live. Common use-cases is to tweak gameplay parameters or to perform debugging on a running game.
Cons
Con No IDE
If you like having some huge GUI akin to Gamemaker, Unreal, Unity, etc, Crafty is not for you.
