zakkudesu
9/30/2019 - 10:45 AM

BuiltInConstructors_notRecommended

//Built in Constructors, not advisable to use 

//string 

const name1 = 'Jeff';

const name2 = new String('Jeff'); //object not primitive value

// name2.foo=('bar');

console.log(name1);

// console.log(name2);

console.log(typeof name2);

if(name1 === 'Jeff'){
  console.log('Yes');
} else {
  console.log('No');
}

if(name2 === 'Jeff'){
  console.log('Yes');
} else {
  console.log('No');
}

// Numbers
const num1 = 5; //primitive

const num2 =  new Number(5);//object

console.log(typeof num2);

//Boolean
const bool1= true;
const bool2= new Boolean(true);

console.log(typeof bool2);

//Functions
const getSum1= function(x,y){
  return x + y;
}
console.log(getSum1(1,1));

const getSum2 =  new Function('x','y','return x + y');
console.log(getSum2(1,1));

//Object
const john1 = {name: "John"};
console.log(john1);

const john2 = new Object({name: "John"});
console.log(john2);

//Arrays
const arr1 = [1,2,3,4];
const arr2 = new Array(1,2,3,4);
console.log(arr1, arr2);

//Regular Expressions
const re1 = /\w+/;
const re2 = new RegExp('\\w+');
console.log(re1);
console.log(re2);