//primitive = {STRING, NUMBER, BOOLEAN, SYMBBOL, UNDEFIEND, NULL}
//non-primitive = {ARRAY, OBJECT, FUNCTION}
//primitive is always copied by VALUE
var a = 1;
var b = a;
//console.log(a , b) = 1 , 1
a = 3;
console.log(a) //3
console.log(b) // still 1 and not 3 (always copied by value only)
//non-primitive is always copied by REFERENCE
var x = {name : "Jscript"};
var y = x;
//console.log(x , y) TWICE = Object { name: "Jscript" }
x.name = "Js";
console.log(x) //Js
console.log(y) //Js {copied by reference} like pointers in C lang
Primitive Data Types
Primitive data types in JavaScript include:
Numbers - Integers, floats
Strings - Any data under single quote, double quote or backtick quote
Booleans - true or false value
Null - empty value or no value
Undefined - a declared variable without a value
Symbol - A unique value that can be generated by Symbol constructor
Quas : WHAT IS JAVASCRIPT PRIMITIVE AND NON PRIMITIVE DATA TYPE ?
Ans :
primitive =>
STRING => var myName = 'iqbal';
NUMBER => var myAge = 25;
BOOLEAN => var iAmStudent = true;
symbol => +, -, *, /, % +=, -=, ++, --, <, >, =, ==, ===, !==, !=, <=, >=
undefined => A variable that has not been assigned a value of your code
null => Null means having no value
non-primitive =>
ARRAY =>
var friendsName = ['habib', 'iqbal', 'shorif', 'asraful', 'rasel', 'arif', 'deader' ];
OBJECT =>
var mobile = {
brand : 'iPhone',
price : 79000,
storage : '64gb',
camera : '50MP'
}
FUNCTION =>
function isEven(number){
const remainder = number % 2;
if(remainder === 0){
return true;
}
else{
return false;
}
}
const evEnNumber = 180;
const evenNumber2 = 185;
const toTalEven = isEven(evEnNumber);
const totalEven2 = isEven(evenNumber2);
console.log(toTalEven);
console.log(totalEven2);