In this article, I will discuss the difference between Rhino JS vs Node JS. Even
I am new to Rhino JS. I have read from different sources and have put them in
this Blog.
Rhino JS vs Node JS
Rhino is just a Javascript engine written in Java Language which can execute
Javascript Code. It cannot be connected to the NPM ecosystem and there is no
other package. Node.js is a set of runtime environments for JavaScript
programs, which not only includes the implementation of the JavaScript core
language provided by V8 but also includes a wealth of libraries.
In Simple, Node JS is a standalone, events, asynchronous javascript
environment based on V8 and can be used for building lightweight, real-time
applications.
Code Example
Rhino JS
Below Example simply prints the argument,
function print() {
for( var i = 0; i < arguments.length; i++ ) {
var value = arguments[i];
java.lang.System.out.print( "PRINT ARGUEMENT OUTPUT: "+value );
}
java.lang.System.out.println();
}
print("InfoTipsNews")
Node JS
Below Example simply prints the first argument,
console.log("PRINT ARGUEMENT OUTPUT: ",process.argv[2]);
So why is Rhino JS being discussed together with Node.js
Obviously, this comes from the need to use JavaScript programming on the
server-side.
JVM-based language implementation is one of the popular choices for
server-side programs, and Rhino is a JavaScript engine implemented in Java
and running on the JVM. It can seamlessly use Java’s rich core libraries and
third-party libraries, so there are many based on Rhino’s server-side
JavaScript solution.
Node.js is based on the Google V8 JavaScript engine and implements core
libraries such as I/O by itself. Later, it became popular to manage various
third-party libraries based on NPM and became a popular emerging server-side
JavaScript solution.
You can refer to this Wiki page to see what options are available for server-side JavaScript: Comparison of server-side JavaScript solutions.
Is Rhino JS compatible with Node.js
Not compatible. Rhino is a Javascript engine written in Java while Node JS is a server-side Javascript Environment using the V8 Engine. The two are different things. Compatible with Node.js means to provide the same event-based core library package, while Rhino is just a pure JavaScript engine and does not provide Node.js core library API.
The Two are different things and there is no direct competition and there is no compatibility or incompatibility.
Conclusion
Node isn’t built on top of the JVM so if you’re looking to interop with Java then Rhino is one of the few choices out there. Probably because Rhino is just an engine while Node JS is stuff on top of an engine. Rhino is more like V8 which powers Node JS.
Comments
Post a Comment