//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);