Skip to main content

NodeJS

Question : Why You should use Node JS?
Answer : Following are the major factor influencing the use of the NodeJS
Popularity : The popularity can be important factor, as it has more user base and hence solution 
of any common problem faced by developer can found easily online, without any professional help.

JavaScript at all levels of the stack : A common language for frontend and backend offers several potential benefits:

  • The same programming staff can work on both ends of the wire
  • Code can be migrated between server and client more easily
  • Common data formats (JSON) exist between server and client
  • Common software tools exist for server and client
  • Common testing or quality reporting tools for server and client
  • When writing web applications, view templates can be used on both sides


Leveraging Google's investment in V8 Engine.

Leaner, asynchronous, event-driven model


Microservice architecture


Question : example of node JS code?
Answer : 
const fs = require('fs');
const util = require('util');
const fs_readdir = util.promisify(fs.readdir);

( async () => {
    const files = await fs_readdir('.');
    for(let file of files ){
        console.log(file);
    }

})();

Question :  Example to read the content from the command line
Answer  : 
code
console.log(process.argv[2] ? process.argv[2] : 'No Arguments passed');

command line
/usr/local/bin/node /Users/vcmishra/central-api/db> test.js hello

Question : create a basic server?
Answer

const http = require('http');
http.createServer((req,res)=>{
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('Hello, World!\n');

}).listen(1234,'127.0.0.1');

Question : Is require a async or sync?
Answer : sync.

Question : Give example of module.exports
Answer :
File 1 : the methods are created
module.exports.hello = ()=>{
console.log('hello');
};

module.exports.hi = ()=>{
console.log('hi');
};

File 2 : it is imported and used
const greetUtil = require('./test');
greetUtil.hello();
greetUtil.hi();

The function can directly called if imported this way

const hello = require('./test').hello;
const hi = require('./test').hi;
hello();
hi();


or alternatively can be called like as follow
require('./test').hello()
require('./test').hi()

Another way is

File 1 :
module.exports = {
hello: () => {
console.log('hello');
},
hi: () => {
console.log('hi');
}
};

File 2 :
There may not be needing any change, but alternativly using the es6 destrcutring you can also use as follows :

const { hello, hi } = require('./test');
hi();
hello();


Another example using destructuring
File 1
exports.util = {
hello: () => {
console.log('hello');
},

hi: () => {
console.log('hi');
}
};


exports.autil = {
hello: () => {
console.log('a hello');
},

hi: () => {
console.log('a hi');
}
};


File 2 :
const { hello, hi } = require('./test').util;
const { hello : aHello , hi : aHi } = require('./test').autil;

hi();
hello();

aHi();
aHello();

Pay attention to the second line where, we are renaming the hello and hi from the autil to avoid the conflict between previously imported hi and hello from util.








Comments

Popular posts from this blog

Javascript

Question : example of Map Reduce Answer : (() => { let aNumberArray = [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 ] ; let sum = aNumberArray. map (data => data * 2 ) . reduce ((ongoing , data) => ongoing + data) ; console . log (sum) ; })() Question : What is IIFE? Answer  : Immediately Invoked function expression e.g. (function(){}()). usually pronounces as " effy ". Question : Why the script tag should be added at the bottom or before the end of the body tag? Answer  : It helps the html page to render quickly without even downloading the script which may be getting downloaded from the slow CDN. there are other alternative like async and defer as well, which are supported primarily on new browsers.     <script src="bower_components/angular/angular.min.js" defer></script>     <script src="bower_components/jquery/dist/jquery.min.js" defer></script>     <script src="bower_components...

HTML&CSS

Question : Why title element is important? Answer : This is the element represent, html page in the tab, also when you add this webpage as a bookmark then it will be a default name saved for the bookmark name. Question : What is the benefit of using the label? Answer : the for attribute of lable tag will able to associate the name with the element, and clicking on the label itself is good enough to add the focus and and selection to the given element. Question : Does the box-sizing property affect the overall width or height of the elements? Answer : Yes, border width, padding and margin is added to the width properties, e.g. h1 { line-height : 40 px ; font-weight : bold ; color : aqua ; font-size : 40 px ; width : 300 px ; padding : 50 px ; margin : 50 px ; border : 10 px dotted ; text-align : center ; } This means that the overall of width of the element is width value  + 2 * padding [ right + left ] + 2 * border [ left + right ]. Questio...