Skip to main content

Globant part 3

 1)ES6 features:

ES6 (ECMAScript 2015) introduced many new features and syntax improvements to JavaScript. Here are some notable ES6 features along with examples:


1. Arrow Functions:

Arrow functions provide a more concise syntax for writing anonymous functions.


javascript

Copy code

// ES5

function add(a, b) {

  return a + b;

}


// ES6

const add = (a, b) => a + b;

2. Template Literals:

Template literals allow embedding expressions inside strings using backticks (`).


javascript

Copy code

// ES5

var message = "Hello, " + name + "!";


// ES6

let message = `Hello, ${name}!`;

3. Destructuring Assignment:

Destructuring allows extracting values from objects or arrays and assigning them to variables.


javascript

Copy code

// ES5

var person = { name: 'John', age: 30 };

var name = person.name;

var age = person.age;


// ES6

const { name, age } = { name: 'John', age: 30 };

4. Spread Syntax:

The spread syntax (...) allows expanding iterable objects (e.g., arrays) into individual elements.


javascript

Copy code

// ES5

var arr1 = [1, 2, 3];

var arr2 = [4, 5, 6];

var combined = arr1.concat(arr2);


// ES6

let arr1 = [1, 2, 3];

let arr2 = [4, 5, 6];

let combined = [...arr1, ...arr2];

5. Default Parameters:

Default parameters allow specifying default values for function parameters.


javascript

Copy code

// ES5

function greet(name) {

  name = name || 'Guest';

  console.log('Hello, ' + name + '!');

}


// ES6

const greet = (name = 'Guest') => {

  console.log(`Hello, ${name}!`);

};

6. Classes:

ES6 introduced a more convenient syntax for defining classes in JavaScript.


javascript

Copy code

// ES5

function Person(name, age) {

  this.name = name;

  this.age = age;

}


Person.prototype.greet = function() {

  console.log(`Hello, my name is ${this.name} and I am ${this.age} years old.`);

};


// ES6

class Person {

  constructor(name, age) {

    this.name = name;

    this.age = age;

  }


  greet() {

    console.log(`Hello, my name is ${this.name} and I am ${this.age} years old.`);

  }

}

These are just a few examples of ES6 features. ES6 introduced many more enhancements such as let and const for variable declarations, for...of loops, Promises, and more, which have become standard in modern JavaScript development.


One of the most powerful features introduced in ECMAScript 2015 (ES6) is Promises. Promises provide an elegant and robust solution for managing asynchronous operations, simplifying complex callback structures, and improving code readability.27 Jun 2023



2)Output:

setTimeout(() => {

    console.log("Inside setTimeout callback");

}, 0);


const myPromise = new Promise((resolve, reject) => {

    resolve("Resolved");

});


process.nextTick(() => {

    console.log("Inside process.nextTick callback");

});


myPromise.then((result) => {

    console.log("Promise resolved with:", result);

}).catch((error) => {

    console.error("Promise rejected with:", error);

}).finally(() => {

    console.log("finally");

});

Inside process.nextTick callback
Promise resolved with: Resolved
finally
Inside setTimeout callback
  • process.nextTick() callbacks are executed before any other I/O events or timers, so "Inside process.nextTick callback" is logged first.
  • Promise.then() and Promise.catch() handlers are executed asynchronously after the current execution context is empty. Since the Promise resolves immediately, the .then() handler is invoked next, logging "Promise resolved with: Resolved".
  • The finally() block is executed after the Promise settles, logging "finally".
  • setTimeout() callbacks are executed after a minimum of the specified delay (in this case, 0 milliseconds), but after the current execution context is empty. Therefore, "Inside setTimeout callback" is logged last.




Comments

Popular posts from this blog

Node.js: Extract text from image using Tesseract.

In this article, we will see how to extract text from images using Tesseract . So let's start with this use-case, Suppose you have 300 screenshot images in your mobile which has an email attribute that you need for some reason like growing your network or for email marketing. To get an email from all these images manually into CSV or excel will take a lot of time. So now we will check how to automate this thing. First, you need to install Tesseract OCR( An optical character recognition engine ) pre-built binary package for a particular OS. I have tested it for Windows 10. For Windows 10, you can install  it from here. For other OS you make check  this link. So once you install Tesseract from windows setup, you also need to set path variable probably, 'C:\Program Files\Tesseract-OCR' to access it from any location. Then you need to install textract library from npm. To read the path of these 300 images we can select all images and can rename it to som...

Globant part 1

 1)call,apply,bind example? Ans: a. call Method: The call method is used to call a function with a given this value and arguments provided individually. Javascript code: function greet(name) {   console.log(`Hello, ${name}! I am ${this.role}.`); } const person = {   role: 'developer' }; greet.call(person, 'Alice'); // Output: Hello, Alice! I am developer. In this example, call invokes the greet function with person as the this value and passes 'Alice' as an argument. b. apply Method: The apply method is similar to call, but it accepts arguments as an array. Javascript code: function introduce(language1, language2) {   console.log(`I can code in ${language1} and ${language2}. I am ${this.name}.`); } const coder = {   name: 'Bob' }; introduce.apply(coder, ['JavaScript', 'Python']); // Output: I can code in JavaScript and Python. I am Bob. Here, apply is used to invoke introduce with coder as this and an array ['JavaScript', 'Pyt...

Globlant part 2

 1)JWT token:           const jwt = require ( 'jsonwebtoken' ); A JWT token consists of three parts separated by dots ( . ): Header : Contains metadata about the type of token and the hashing algorithm used. Payload (Claims) : Contains the claims or statements about the subject of the token, such as user ID, roles, etc. Signature : Verifies that the sender of the JWT is who it says it is and ensures that the message wasn't changed along the way. It is header +payload +secret key. Methods: const newToken = jwt. sign (payload, secretKey, { expiresIn : '1h' }); Use verify() when you need to ensure the token's integrity and authenticity. Use decode() when you only need to extract information from the token and don't need to verify its signature. 2)Window ,this,global: In nodejs this and global refers to same global methods and varibales just that no dom related things that are in window. In nodejs no window. 3)a.getSum(); // Define the custom method getSu...