Categories
ECMAScript Javascript

Regular Expression

/**
 * to demonstrate regEx
 */

//Attributes explaination
// G- match globally
// I - case insensitive, ignore matching of case.
// M - multiline match
// U - consider filter pattern as Unicode characters
// Y - start match from given fromIndex value, dont match globally

//meta characters to help build expressions
//.  any single character
//\s whitespace characters(space, tab, newline)
//\S non white space character
//\d a digit between 0 to 9
//\w a word character (a to z, A to Z, 0 to 9, _)
//\W non word character
//[\b] backspace character
//(a|b|c) matches a or b or c


//bracket Expressions explaination
//[...] any character in bracket matches
//[^...] no character in bracket matches
//[0-9] matches any digit between 0 to 9
//[a-z] matches any alphabet between a to z in lower case
//[A-Z] matches any alphabet between A to Z in upper case
//[a-Z] matches any alphabet between a to Z in any case
//[^a-zA-Z] matches any string that doesnt contain any character between a to z and A to Z.
//

//Quantifier expression explanation : we will explain with help of character a
//a+ matches any string that contains at least one occurance of a
//a* matches any string that contains zero or more occurance of a
//a? matches any string that contains one occurance of a
//a{N} matches any string that contains N number of occurances of a
//a{2,3} matches any string that contains sequences of 2 or 3 a
//a{2,} matches any string that contains sequences of 2 or more a
//p$ match string with p as end
//^p match string with p at beginning
//a.a match string which starts and ends with a with one character in between
//^.{2}$ matches any string which contains only 2 characters
//

(.*)

matches html paragraph with any string within it //A(WS)* - matches string starting with A and followed by any number of sequences of WS. //RegEx Properties and methods //RegExpObject.global to indicate if pattern matching is Global in scope var expr1 = new RegExp("AWS","g"); console.log("is pattern matching with global ?"+expr1.global); //RegExpObject.igonreCase to indicate if pattern matching is case insensitive var expr2 = new RegExp("AWS","i"); console.log("is pattern matching case insensitive expr2?"+expr2.ignoreCase); var expr3 = new RegExp("AWS"); console.log("is pattern matching case insensitive now expr3?"+expr3.ignoreCase); //RegExpObject.lastIndex - to return endIndex of last match var expr4 = new RegExp("cloud","gi"); console.log("is pattern matching case insensitive epxr4 :"+expr4.ignoreCase); console.log("is pattern matching case global epxr4 :"+expr4.global); var str1 = "AWS cloud is most popular cloud system. cloud reduces cost." do{ expr4.test(str1); console.log("current lastIndex expr4 : " + expr4.lastIndex); }while(expr4.lastIndex>0); //RegExpObject.multiline - to return true if matching to perform on multiple lines is set var expr5 = new RegExp("cloud","m"); console.log("is multiline matching set expr5 :"+expr5.multiline); //RegExpObject.source - text pattern to match var expr6 = new RegExp("A(WS)*"); console.log("source text pattern to match expr6 : "+expr6.source + ", "+expr6.test("AWSWSWS")); //RegExpObject.exec() - search for pattern and return matching array of results. if no match returns NULL var expr7 = new RegExp("cloud","gi"); var str2 = "AWS CLOUD is most popular cloud system, to reduce cost cloud is future"; console.log("exec for cloud ::"+expr7.exec(str2)); console.log("exec for cloud ::"+expr7.exec(str2)); //RegExpObject.test() - search for pattern and return TRUE if matching expression found else FALSE. var expr7 = new RegExp("cloud","gi"); var str2 = "AWS CLOUD is most popular cloud system, to reduce cost cloud is future"; console.log("exec for cloud ::"+expr7.test(str2)); console.log("exec for cloud ::"+expr7.test(str2)); //RegExpObject.replace(regExpObject|string, newString|function) //replaces matching regExpObject pattern or string with newString or new string generated by function var expr8 = new RegExp("cloud"); var expr9 = new RegExp("cloud","gi"); var str3 = "AWS CLOUD is most popular cloud system, to reduce cost cloud is future"; console.log("replace cloud by host expr8 ::"+str3.replace(expr8,"host")); console.log("replace cloud by host expr9 ::"+str3.replace(expr9,"host")); //RegExpObject.search(pattern) - search and return index where found var str4 = "AWS CLOUD is most popular cloud system, to reduce cost cloud is future"; var expr10 = new RegExp(/cloud/gi); console.log("search for cloud :: "+ str4.search(expr10)); //RegExpObject.split([separator,limit]) - to split by separator, limit is maximum number of splits var str5 = "AWS CLOUD is most popular cloud system, to reduce cost cloud is future"; console.log("split str5 by space:: " + str5.split(" ")); console.log("split str5 by cloud:: " + str5.split(/cloud/gi)); console.log("split str5 by cloud for 2 :: " + str5.split(/cloud/gi,2)); //RegExpObject.toString() - to return string equivalent console.log("expr9 ::" +expr9.toString());

Output

Categories
ECMAScript Javascript

Math object

/**
 * to demonstrate the Math object, which provides static members and functions.
 */

//Eulers constants
console.log("Eulers constant ::" + Math.E);

//LN2 - natural log of 2 
console.log("LN2 ::"+Math.LN2);

//LN10 - natural log of 10
console.log("LN10 ::"+Math.LN10);

//LOG2E
console.log("LOG2E ::"+Math.LOG2E);

//LOG10E
console.log("LOG10E ::"+Math.LOG10E);

//PI
console.log("PI ::"+Math.PI);

//SQRT1_2 - square root of 1/2
console.log("SQRT1_2 ::"+Math.SQRT1_2);

//SQRT2
console.log("SQRT2 ::"+Math.SQRT2);

//Math.pow(X,Y) - value of X raised to Y
console.log("2 raised to 4 ::" + Math.pow(2,4));

//Math.sqrt(X) - square root of X
console.log("square root of 16 ::" + Math.sqrt(16));

//Math.cbrt(X) - cube root of X
console.log("cube root of 125 ::" + Math.cbrt(125));

//Math.exp(X) - Math.E raised to X
console.log("Eulers constant raised to 4 ::"+ Math.exp(4));


//Math.log(X) - natural algorithm of X
console.log("log of 20 ::"+Math.log(20));

//Math.log10(X) - Base 10 log of X
console.log("Log10 of 10 ::"+Math.log10(10));

//Math.log2(X) - Base 2 log of X
console.log("Log2 of 2 ::"+Math.log2(2));

//Math.abs(X) - absolute value of X
console.log("absolute value of -12.22 ::"+Math.abs(-12.22));

//Math.Sign(X) - returns sign of X
console.log("Sign of -12.22" + Math.sign(-12.22));

//Math.ceil(X) - ceil value of X
console.log("ceil value of 12.22 ::"+ Math.ceil(12.22));
console.log("ceil value of -12.22 ::"+ Math.ceil(-12.22));


//Math.floor(X) - floor value of X
console.log("floor value of 12.22 ::"+Math.floor(12.22));
console.log("floor value of -12.22 ::"+Math.floor(-12.22));


//Math.trunc(X) - integer part of X
console.log("integer part of 12.22 ::"+Math.trunc(12.22));

//Math.round(X) - round to nearest integer
console.log("round of 12.22 :: " + Math.round(12.22));
console.log("round of -12.22 :: " + Math.round(-12.22));
console.log("round of 12.92 ::" + Math.round(12.92));

//Math.min(X1,X2,...Xn) - return minimal value
console.log("Minimum of -2, 4, -8,5 ::"+Math.min(-2,4,-8,5));

//Math.max(X1,X2,...Xn) - return maximal value
console.log("Maximum of -2, 4, -8,5 ::"+Math.max(-2,4,-8,5));

//Math.random()
console.log("random value ::"+Math.random());

//Math.sin(X)
console.log("sin of PI ::" + Math.sin(Math.PI));
//Math.cos(X)
console.log("cos of PI ::" + Math.cos(Math.PI));
//Math.tan(X)
console.log("tan of PI ::" + Math.tan(Math.PI));
//Math.asin(X)
console.log("asin of PI/2 ::" + Math.asin(Math.PI/2));
//Math.acos(X)
console.log("acos of PI/2 ::" + Math.acos(Math.PI/2));
//Math.atan(X)
console.log("atan of PI/2 ::" + Math.atan(Math.PI/2));
//Math.atan2(X,Y) - returns value between -PI to PI representing angle theta of point X,Y
console.log("atan2 of (0,1) ::" + Math.atan2(0,1));





Output

Eulers constant ::2.718281828459045
LN2 ::0.6931471805599453
LN10 ::2.302585092994046
LOG2E ::1.4426950408889634
LOG10E ::0.4342944819032518
PI ::3.141592653589793
SQRT1_2 ::0.7071067811865476
SQRT2 ::1.4142135623730951
2 raised to 4 ::16
square root of 16 ::4
cube root of 125 ::5
Eulers constant raised to 4 ::54.598150033144236
log of 20 ::2.995732273553991
Log10 of 10 ::1
Log2 of 2 ::1
absolute value of -12.22 ::12.22
Sign of -12.22-1
ceil value of 12.22 ::13
ceil value of -12.22 ::-12
floor value of 12.22 ::12
floor value of -12.22 ::-13
integer part of 12.22 ::12
round of 12.22 :: 12
round of -12.22 :: -12
round of 12.92 ::13
Minimum of -2, 4, -8,5 ::-8
Maximum of -2, 4, -8,5 ::5
random value ::0.11633567101339315
sin of PI ::1.2246467991473532e-16
cos of PI ::-1
tan of PI ::-1.2246467991473532e-16
asin of PI/2 ::NaN
acos of PI/2 ::NaN
atan of PI/2 ::1.0038848218538872
atan2 of (0,1) ::0

Categories
ECMAScript Javascript

Date functions

/**
 * to demonstrate Date features
 */

//creation of date object using constructor
var date1 = new Date();
console.log("date1 ::"+date1);//returns todays Date

//getDate() - day of month
console.log("getDate ::"+date1.getDate());

//getDay() - day of week
console.log("getDay ::" + date1.getDay());

//getFullYear() - get year
console.log("getFullYear ::"+date1.getFullYear());

//getHours - get hour
console.log("getHourse ::"+date1.getHours());

//getMilliseconds - get milliseconds
console.log("getMilliseconds ::"+date1.getMilliseconds());

//getMinutes - get minutes
console.log("getMinutes ::"+date1.getMinutes());

//getMonth - get Month index
console.log("getMonth ::"+date1.getMonth());


//getSeconds - get seconds
console.log("getSeconds ::"+date1.getSeconds());

//getTime - number of milliseconds since since January 1, 1970, 00:00:00 UTC
console.log("getTime ::"+date1.getTime());

//getTimezoneOffset - timezone offset in minutes
console.log("getTimezoneOffset ::"+date1.getTimezoneOffset());

//getUTCDate - day of month in UTC
console.log("getUTCDate ::"+date1.getUTCDate());


//getUTCDay - day of week in UTC
console.log("getUTCDay ::"+date1.getUTCDay());


//getUTCFullYear - year in UTC
console.log("getUTCFullYear ::"+date1.getUTCFullYear());

//getutcHours - hours in utc
console.log("getutcHourcs ::"+date1.getUTCHours());

//getUTCMilliseconds - milliseconds in UTC
console.log("getUTCMilliseconds ::"+date1.getUTCMilliseconds());

//getUTCMinutes - Minutes in UTC
console.log("getUTCMinutes ::"+date1.getUTCMinutes());


//getUTCMonth - month index in UTC
console.log("getUTCMonth ::"+date1.getUTCMonth());


//getUTCSeconds - seconds in UTC
console.log("getUTCSeconds ::"+date1.getUTCSeconds());

//setDate - sets Date as per current timezoen
date1.setDate(10);
console.log("date set to 10 date1::"+date1);

//setFullYear(yearValue[,monthValue,dayValue]) - sets the year
date1.setFullYear(2021);
console.log("yaer set to 2021 date1::"+date1);

//date.setHours(hourse[,minutes,seconds,milliseconds]); - set hours
date1.setHours(21);
console.log("hours set to 21 date1 ::"+date1);

//date.setMinutes(minute[,seconds,milliseconds]) - set minutes
date1.setMinutes(13);
console.log("minutes set to 13 date1 ::"+date1);

//date.setSeconds(seconds[,milliseconds]) - set seconds
date1.setSeconds(53);
console.log("seconds set to 53 date1 ::"+date1);

//date.setMilliseconds(milliseconds) - set milliseconds value ranges between 0-999
date1.setMilliseconds(456);
console.log("milliseconds set to 456 date1 ::"+date1.getMilliseconds());

//date.setTime(timeValue) - sets the date object with timevalue. timeValue is number of milliseconds since January 1, 1970, 00:00:00 UTC
date1.setTime(700000000);
console.log("date1 since 1970::"+date1);

date1 = new Date();

//date.setUTCDate() - sets day of month as per UTC
date1.setUTCDate(23);
console.log("after set UTC date to 23 date1 ::"+date1);

//date.setUTCFullYear(year[,month,day]) - sets the year as per UTC
date1.setUTCFullYear(2023);
console.log("after set UTC year to 2023 date1 ::" + date1);

//date1.setUTCHours(hours[,minutes,seconds,milliseconds]) - sets hours as per UTC
date1.setUTCHours(23);
console.log("after set UTC hours to 23 date1::"+date1);

//date1.setUTCMinutes(minutes[,seconds,milliseconds]) - sets Minutes as per UTC
date1.setUTCMinutes(30);
console.log("after set UTC minutes to 30 date1::"+date1);

//date1.setUTCSeconds(seconds[,milliseconds]) - sets seconds as per UTC
date1.setUTCSeconds(30);
console.log("after set UTC seconds 30 date1::"+date1);

//date1.setUTCMilliseconds(milliseconds) - sets milliseconds as per UTC, value ranges from 0 - 999
date1.setUTCMilliseconds(700);
console.log("after setting UTC milliseconds date1::"+date1.getMilliseconds());

//date1.toDateString() - returs date only in readable format
console.log("date of date1 ::"+date1.toDateString());

//date1.toLocaleDateString() - returns date only in locale specific format
console.log("date of date1 in locale foramt::"+date1.toLocaleDateString());

//date1.toTimeString() - returns time only
console.log("time of date1  ::"+date1.toTimeString());


//date1.toLocaleTimeString() - returns time only in locale specific format
console.log("time of date1 in locale format ::"+date1.toLocaleTimeString());

//date1.toString() - to convert to string
console.log("date1.toString ::"+date1.toString());

//date1.toLocaleDateString() - to convert to string in locale format
console.log("date1 in locale string format ::" + date1.toLocaleDateString());

//date1.toUTCString() - return string in UTC
console.log("date1 in UTC string::"+date1.toUTCString());

//date1.valueOf - retunrs primitive value of Date object, milliseconds since 01 January, 1970 00:00:00 UTC 
console.log("primitive value ::"+date1.valueOf());

Output

date1 ::Mon Jan 04 2021 16:48:56 GMT+0900 (Japan Standard Time)
getDate ::4
getDay ::1
getFullYear ::2021
getHourse ::16
getMilliseconds ::382
getMinutes ::48
getMonth ::0
getSeconds ::56
getTime ::1609746536382
getTimezoneOffset ::-540
getUTCDate ::4
getUTCDay ::1
getUTCFullYear ::2021
getutcHourcs ::7
getUTCMilliseconds ::382
getUTCMinutes ::48
getUTCMonth ::0
getUTCSeconds ::56
date set to 10 date1::Sun Jan 10 2021 16:48:56 GMT+0900 (Japan Standard Time)
yaer set to 2021 date1::Sun Jan 10 2021 16:48:56 GMT+0900 (Japan Standard Time)
hours set to 21 date1 ::Sun Jan 10 2021 21:48:56 GMT+0900 (Japan Standard Time)
minutes set to 13 date1 ::Sun Jan 10 2021 21:13:56 GMT+0900 (Japan Standard Time)
seconds set to 53 date1 ::Sun Jan 10 2021 21:13:53 GMT+0900 (Japan Standard Time)
milliseconds set to 456 date1 ::456
date1 since 1970::Fri Jan 09 1970 11:26:40 GMT+0900 (Japan Standard Time)
after set UTC date to 23 date1 ::Sat Jan 23 2021 16:48:56 GMT+0900 (Japan Standard Time)
after set UTC year to 2023 date1 ::Mon Jan 23 2023 16:48:56 GMT+0900 (Japan Standard Time)
after set UTC hours to 23 date1::Tue Jan 24 2023 08:48:56 GMT+0900 (Japan Standard Time)
after set UTC minutes to 30 date1::Tue Jan 24 2023 08:30:56 GMT+0900 (Japan Standard Time)
after set UTC seconds 30 date1::Tue Jan 24 2023 08:30:30 GMT+0900 (Japan Standard Time)
after setting UTC milliseconds date1::700
date of date1 ::Tue Jan 24 2023
date of date1 in locale foramt::1/24/2023
time of date1  ::08:30:30 GMT+0900 (Japan Standard Time)
time of date1 in locale format ::8:30:30 AM
date1.toString ::Tue Jan 24 2023 08:30:30 GMT+0900 (Japan Standard Time)
date1 in locale string format ::1/24/2023
date1 in UTC string::Mon, 23 Jan 2023 23:30:30 GMT
primitive value ::1674516630700

Categories
ECMAScript Javascript

Boolean Variables

/**
 * to demonstrate the boolean variables
 */

//initialize boolean object variables by constructor.

var valZero = new Boolean(0);
console.log("valZero ::"+valZero);

var valNAN = new Boolean(NaN);
console.log("valNAN ::"+valNAN);

var valNULL = new Boolean(null);
console.log("valNULL :: "+valNULL);

var valUndefined = new Boolean(undefined);
console.log("valUndefined ::"+valUndefined);

var valEmpty = new Boolean("");
console.log("valEmpty ::"+valEmpty);

//initialize boolean primitive varible using valueOf() on Object variable.
//object.valueOf() returns the primitive value of object.
var bool = valEmpty.valueOf();
console.log("bool ::"+bool);


Output

Categories
ECMAScript Javascript

Strings

/**
 * to demonstrate String capabilities
 */

//to create String using constructor new String(StringLiteral)

let employeeName  = new String("Sam Josea");
console.log("employeeName : "+employeeName);

//length property 
console.log("employeeName.length : " + employeeName.length);

//charAt(index) method
console.log("charAt 2 : "+employeeName.charAt(2));

//charCodeAt(index) method
console.log("charCodeAt 2 : "+employeeName.charCodeAt(2));

//concat string.concat(string2, string3[, ..., stringN]);
let nameAndCity = employeeName.concat(" Of"," Goa"," India");
console.log("employeeName : " + employeeName);
console.log("nameAndCity : "+nameAndCity);

//indexOf(searchValue,[fromIndex]) to return the index of first occurance characters in string
console.log("index of 'a' : " + employeeName.indexOf("a"));
console.log("index of 'a' from index 2 : " + employeeName.indexOf("a",2));

//lastIndexOf(searchValue,[fromIndex]) to return index of last occurance character in string
console.log("last index of 'a' : "+employeeName.lastIndexOf("a"));

//string1.localeCompare(string2) to compare two Strings string1, string2
console.log("local compare :: " + employeeName.localeCompare("Tam Joseas"));

//string1.replace(regexp/substring, substring) it is used to replace substring which matches passed argument regular expression
var regExpr = /London/g;
var message = "london is historical city, London is modern city";
var newMessage = message.replace(regExpr,"Tokyo");
console.log(newMessage);

//string1.search(regepx/substring)
//returns starting index of substring matching passed regular expression. if not found returns -1
console.log("index of London(case sensitive):"+message.search(regExpr));
console.log("index of London(case insensitive):"+message.search(/London/gi));

//string.slice(startIndex[, endIndex]) to extract substring in given startindex to endIndex(exclusive)
console.log("slice from 0 to 10 message :" + message.slice(0,21));

//string.split(seperatorChar[,noOfTokens]) to split by seperator Character, limit tokens to noOfTokens, returns array
console.log("split by space message : " + message.split(" ",4));

//string.substr(startIndex [,length]) to split by length
console.log("substring of message :" +message.substr(27,6));

//string1.substring(startIndex[,endIndex]) to return substring between startIndex and endIndex. endIndex is exclusive.
console.log("substring of message :" + message.substring(27,34));
console.log("substring of message : " + message.substring(27));

//string.toLocaleLowerCase() to return entire string to lower case.
console.log("message in lower case : " + message.toLocaleLowerCase());

//string.toLocaleUpperCase() to return entire string to upper case.
console.log("message in upper case : " + message.toLocaleUpperCase());

//string.toUpperCase() to convert string to upper case
console.log("message toUpperCase : " + message.toUpperCase());

//string.toString() to return the string representation
console.log("message toString : "+ message.toString());




Output

Categories
ECMAScript Javascript

Objects

/**
 * to demonstrate syntaxes of objects
 */

//initialization of objects

//Initialization by assignment of values syntax : var object_name = {key1:value,key2:function(){},key3:["item1","item2"]}
var employee = {
		employeeCode : "123",
		Name : "Ina Hosen",
		skills : ["Java","Javascript","Oracle"],
		getInfo : function(){
				return "{ "
				+"Name : "+this.Name
				+", employeeCode : " + this.employeeCode
				+", skills :" +this.skills
				+" }"}

}

console.log("employee Code ::"+employee.employeeCode);
console.log("employee Name : "+ employee.Name);
console.log("employee information :" + employee.getInfo());

//initialization by constructor var object_name = new Object()
var employee2 = new Object();
employee2.employeeCode = "345"; //assignment as a property
employee2["Name"] = "Mina Kose";//assignment as a key
employee2.printInfo = function(){return "[ Name :" + this.Name+", employeeCode" + this.employeeCode + " ]" };
console.log("print employee2 :" + employee2.printInfo());
console.log ("employee2 Name :" +employee2.Name);//print as property
console.log("employee2 employeeCode : "+employee2["employeeCode"]);//print as a key


//cloning of objects after using object constructor
//clone employee6 from employee
var employee6=new Object();
for (let key in employee){
	employee6[key] = employee[key];
	console.log(key +":"+employee[key]);
}
employee6.employeeCode = "789";
console.log("cloned employee6 : " + employee6.getInfo());

//initialization using the constructor function
function createEmployee(employeeCode, employeeName){
	this.Name = employeeName;
	this.employeeCode = employeeCode;
}
var employee3 = new createEmployee("456","Hina Korse");
employee3.skills = ["Java","Javascript", "MongoDB"];
employee3.printInfo = function(){return "Name :"+this.Name+", employeeCode : "+this.employeeCode+" , Skills :"+this.skills};
console.log("employee3 :" +employee3.printInfo());

//create objects using the Object.create() method
//Below is prototype object with default values, which can be used for object creation from it. Later on default values can be changed to any other values for newly created Objects
var employeePrototype = { 
		Name : "Name",
		skills : ["Development"],
		getInfo : function(){return "Name : "+this.Name+", skills : "+this.skills;}
}

var employee4 = Object.create(employeePrototype);
employee4.Name = "Tina Mors";
var employee5 = Object.create(employeePrototype);
employee5.Name = "Dina Torse"
console.log("employee4 :" + employee4.getInfo());
console.log("employee5 :" + employee5.getInfo());

//Create new Object using Object.assign(target,...sources) method, it will do clone
//this method can be used to copy properties of one object to another object. This another object is returned by function
var employee5 = Object.assign({},employee);
employee5.employeeCode = "678";
console.log("employee ::"+employee.getInfo());
console.log("employee5 ::"+employee5.getInfo());
//Copy employee4 into employee5
Object.assign(employee5,employee4);
console.log("copied employee5 :" + employee5.getInfo());

//Create Object by merging using Object.assign() method
var employee7Name = {Name : "John Khera"};
var employee7Code  = {employeeCode : "111"};
var employee7Skills = {skills : ["Management","Marketing"]};
var employee7 =Object.assign({},employee7Name,employee7Code,employee7Skills);
console.log("printing employee7");
for(key in employee7){
	console.log("employee 7 : "+key+" : "+employee7[key]);
}

//deleting properties of objects
var employee8 = {Name : "Siva kesar", employeeCode : "222",role : "Lead",skills : ["Java","Oracle","AWS Cloud"],address:{
    City:'Pune',
    PostalCode:1234
 }};
delete employee8.role;
console.log("is role property exist :"+ ("role" in employee8));
console.log("is Name property exist :"+ ("Name" in employee8));


//destructuring objects

let {Name,employeeCode} = employee8;//extracting values into varibles matching property names
Name = "Mr." + Name;
console.log("Name:"+Name+", employeeCode:"+employeeCode);

let {address:{City, PostalCode}} = employee8;//extracting internal object
console.log("City :" +City);

let {Name:employee8FullName,employeeCode:employee8Code}=employee8;//extracting values into variables not matching property names
employee8FullName = "Mr."+employee8FullName;
console.log("employee8FullName:"+employee8FullName+", employee8Code:"+employee8Code);

let {skills,...personalInfo} = employee8;
console.log("skills : "+skills);
console.log("personalInfo : "+employee8.toString());
for(key in personalInfo) console.log("Personal Info : "+key +" : "+personalInfo[key]);

//to create object using dynamic property values during initialization
let suffixValue = 'Name'
	   let employee9 = {
	      ['first'+suffixValue]:'Jin',
	      ['last'+suffixValue]:'Bin',
	      employeeCode : '333'
	   }
console.log("FirstName of employee9 ::"+employee9.firstName);

//to create objects using variables assignment
let name = "Ibn Fatim";
let EmployeeCode = "444";
var employee10 = {
		name,
		EmployeeCode,
		printInfo(){return "name ::"+this.name+", EmployeeCode ::"+this.EmployeeCode}
}
console.log("employee10 ::"+employee10.printInfo());


Output

employee Code ::123
employee Name : Ina Hosen
employee information :{ Name : Ina Hosen, employeeCode : 123, skills :Java,Javascript,Oracle }
print employee2 :[ Name :Mina Kose, employeeCode345 ]
employee2 Name :Mina Kose
employee2 employeeCode : 345
employeeCode:123
Name:Ina Hosen
skills:Java,Javascript,Oracle
getInfo:function(){
				return "{ "
				+"Name : "+this.Name
				+", employeeCode : " + this.employeeCode
				+", skills :" +this.skills
				+" }"}
cloned employee6 : { Name : Ina Hosen, employeeCode : 789, skills :Java,Javascript,Oracle }
employee3 :Name :Hina Korse, employeeCode : 456 , Skills :Java,Javascript,MongoDB
employee4 :Name : Tina Mors, skills : Development
employee5 :Name : Dina Torse, skills : Development
employee ::{ Name : Ina Hosen, employeeCode : 123, skills :Java,Javascript,Oracle }
employee5 ::{ Name : Ina Hosen, employeeCode : 678, skills :Java,Javascript,Oracle }
copied employee5 :{ Name : Tina Mors, employeeCode : 678, skills :Java,Javascript,Oracle }
printing employee7
employee 7 : Name : John Khera
employee 7 : employeeCode : 111
employee 7 : skills : Management,Marketing
is role property exist :false
is Name property exist :true
Name:Mr.Siva kesar, employeeCode:222
City :Pune
employee8FullName:Mr.Siva kesar, employee8Code:222
skills : Java,Oracle,AWS Cloud
personalInfo : [object Object]
Personal Info : Name : Siva kesar
Personal Info : employeeCode : 222
Personal Info : address : [object Object]
FirstName of employee9 ::Jin
employee10 ::name ::Ibn Fatim, EmployeeCode ::444

Categories
ECMAScript Javascript

Loops

/**
 * Demonstration for loops
 */


//for(initialization;breaking-condition;step)
//to iterate over the conditions 
for(let i=0;i<10;i++){
	console.log("i::"+i);
}

for(let i=0,j=0;j<10;j+=2,i++){
	console.log("i :"+i+", j :"+j);
}



//for (item of collection)
var evenArray = [2,4,6,8,10,12,14,16];
for(let item of evenArray){
	console.log("evenArray :" +item);
}

//for (variablename in object) 
//to iterate over object properties
var employee={employeeCode:"1",firstName:"Lance", lastName : "Bush"};
for(let key in employee){
	console.log(key+ " : "+ employee[key]);
}

for(let key in evenArray){
	console.log("index :: " + key + " : "+ evenArray[key]);
}


//while(expression)
//it is used to execute until expression is false
var threshold = 100;
i=100;
while(i<threshold){
	i=i*i;
	console.log(" while i value ::"+ i);
}

//do...while(expression)
var threshold = 100;
i=100;
do{
	i=i*i;
	console.log(" do while i value ::"+ i);
}while(i<threshold);

//break statement
var threshold = 100;
i=5;
while(i<threshold){
	i=i+i;
	console.log(" break and while i value ::"+ i);
	if(i%10==0){
		break;
	}
}
	
console.log("demo of break with labels");
for(var k=0;k<2;k++){
	console.log("outermost loop "+k)
outerloop: // This is the label name
	for (var i = 0; i < 5; i++) {
	   console.log("Outerloop: " + i);
	   innerloop:
	   for (var j = 0; j  3 ) break ; // Quit the innermost loop
	      if (i == 2) break innerloop; // Do the same thing
	      if (i == 4) break outerloop; // Quit the outer loop
	      console.log("Innerloop: " + j);
	   }
	}
}

//continue statement
var i=0;
while(i<10){
	i++;
	if(i%2==0){
		continue;
	} else{	
	console.info("odd numbers ::"+i);
	}
	
}

console.log("demo of continue with labels");
outermostloop: for(var k=0;k<2;k++){
	console.log("outermost loop k :"+k)
	outerloop: // This is the label name
	for (var i = 0; i < 3; i++) {
	   console.log("Outerloop: " + i);
	   for (var j = 0; j < 5; j++) {
	      if (j == 3) {
	      continue outermostloop;
	      }
	      console.log("Innerloop: " + j );
	   }
	}
}


Output

i::0
i::1
i::2
i::3
i::4
i::5
i::6
i::7
i::8
i::9
i :0, j :0
i :1, j :2
i :2, j :4
i :3, j :6
i :4, j :8
evenArray :2
evenArray :4
evenArray :6
evenArray :8
evenArray :10
evenArray :12
evenArray :14
evenArray :16
employeeCode : 1
firstName : Lance
lastName : Bush
index :: 0 : 2
index :: 1 : 4
index :: 2 : 6
index :: 3 : 8
index :: 4 : 10
index :: 5 : 12
index :: 6 : 14
index :: 7 : 16
 do while i value ::10000
 break and while i value ::10
demo of break with labels
outermost loop 0
Outerloop: 0
Innerloop: 0
Innerloop: 1
Innerloop: 2
Innerloop: 3
Outerloop: 1
Innerloop: 0
Innerloop: 1
Innerloop: 2
Innerloop: 3
Outerloop: 2
Outerloop: 3
Innerloop: 0
Innerloop: 1
Innerloop: 2
Innerloop: 3
Outerloop: 4
outermost loop 1
Outerloop: 0
Innerloop: 0
Innerloop: 1
Innerloop: 2
Innerloop: 3
Outerloop: 1
Innerloop: 0
Innerloop: 1
Innerloop: 2
Innerloop: 3
Outerloop: 2
Outerloop: 3
Innerloop: 0
Innerloop: 1
Innerloop: 2
Innerloop: 3
Outerloop: 4
odd numbers ::1
odd numbers ::3
odd numbers ::5
odd numbers ::7
odd numbers ::9
demo of continue with labels
outermost loop k :0
Outerloop: 0
Innerloop: 0
Innerloop: 1
Innerloop: 2
outermost loop k :1
Outerloop: 0
Innerloop: 0
Innerloop: 1
Innerloop: 2

Categories
ECMAScript Javascript

Array Functions

To demonstrate what are the available methods to operate over arrays.

/**
 * To demonstrate working of methods on Arrays
 */

var color = ["Red","Green","Yellow","Purple","Violet","Red"];
var shape = ["Triangle","Square","Rectangle","Pyramid"];
var evenNums = [2,4,6,8,10];
var oddNums = [1,3,5,7,9];
var evenOddMix = [1,2,3,4,5,6,7,8,9,10,11,12,13,14];

//lambda functions to declare even/odd syntaxes
var isEven =(X)=>X%2==0;
var isOdd =(X)=>!isEven(X);
var square = (X)=>X*X;
var print = (X)=>console.log("Square of :: "+X+" is ::"+square(X));
var sum = (X,Y)=>X+Y;
var joinbyAnd=(X,Y)=> X+" & "+ Y;

//Concat functions array.concat(value1, value2, ..., valueN);
var colorShapesDigits = color.concat(shape,["1","2"]);
console.log("colorShapesDigits ::"+colorShapesDigits);

//every functions array.every(callback[, thisObject]);
console.log("is Every Even :: From evenNums :: " +evenNums.every(isEven));
console.log("is Every Even :: From evenOddMix :: " +evenOddMix.every(isEven));
console.log("is Every Even :: From oddNums :: " +oddNums.every(isEven));

//some functions array.some(callback[, thisObject]); 
console.log("are some Even :: From evenOddMix :: " +evenOddMix.some(isEven));
console.log("are some Even :: From oddNums :: " +oddNums.some(isEven));


//filter functions array.filter(callback[, thisObject]);
console.log("filter odds :: From evenNums :: " +evenNums.filter(isOdd));
console.log("filter Evens :: From evenOddMix :: " +evenOddMix.filter(isEven));

//forEach functions array.forEach(callback[, thisObject]); 
console.log("forEach printing :: from evenOddMix ::");
evenOddMix.forEach(print);

//indexOf function array.indexOf(searchElement[, fromIndex]);
console.log("index of :: Purple :: from color ::"+color.indexOf("Purple"));
console.log("index of :: Black :: from color ::"+color.indexOf("Black"));
console.log("index of :: Green :: from color ::"+color.indexOf("Green",2));

//lastIndexOf function array.lastIndexOf(searchElement[, fromIndex]);  
console.log("last index of :: Red :: from color ::"+color.lastIndexOf("Red"));

// join functions to join all elements of array into single string array.join([seperator])
console.log("join :: from oddNums ::"+oddNums.join());
console.log("join by - :: from oddNums ::"+oddNums.join("-"));

//map function to map array into another array array.map(callback[, thisObject]); 
console.log("Square All :: From evenOddMix :: " +evenOddMix.map(square));


//pop function to remove last element and return it, array.pop()
console.log("pop :: from shape ::"+shape.pop());
console.log("shape array after pop now ::"+shape);
 
//shift function to remove first element from array, array.shift()
console.log("shift :: from shape :: "+shape.shift());
console.log("shape array after shift now ::"+shape);

console.log("shift :: from shape :: "+shape.unshift("Circle"));
console.log("shape array after unshift now ::"+shape);


//push function to append elements in array, array.push(element1, ..., elementN);
shape.push("Rhombus","Trapezium");
console.log("shape array after push now :"+shape);

//reduce function to apply entire array to single value, array.reduce(callback[, initialValue]); 
console.log("reduce to sum :: from evenNums ::"+evenNums.reduce(sum));
console.log("reduce from right to single string :: from color :: all color are ::"+color.reduceRight(joinbyAnd));
console.log("reduce from left to single string :: from color :: all color are ::"+color.reduce(joinbyAnd));

//to return the reversed array array.reverse();
console.log("Revere :: from array shape :: "+shape.reverse());

//slice to return the section of an array, array.slice(begin[,end]), end is optional & exclusive
console.log("slice 0 to 2 :: from color array ::"+color.slice(0,2));

//sort function to return sorted array array.sort([compareFunction]) if comparefunction not passed, sorted lexographically;
console.log("sort simple by lexically :: from evenOddMix :: "+evenOddMix.sort());
console.log("sort  numbers :: from evenOddMix :: "+evenOddMix.sort((X,Y)=>X-Y));

//toString function
console.log("toString :: from evenOddMix :: "+evenOddMix.toString());


Output

colorShapesDigits ::Red,Green,Yellow,Purple,Violet,Red,Triangle,Square,Rectangle,Pyramid,1,2
is Every Even :: From evenNums :: true
is Every Even :: From evenOddMix :: false
is Every Even :: From oddNums :: false
are some Even :: From evenOddMix :: true
are some Even :: From oddNums :: false
filter odds :: From evenNums :: 
filter Evens :: From evenOddMix :: 2,4,6,8,10,12,14
forEach printing :: from evenOddMix ::
Square of :: 1 is ::1
Square of :: 2 is ::4
Square of :: 3 is ::9
Square of :: 4 is ::16
Square of :: 5 is ::25
Square of :: 6 is ::36
Square of :: 7 is ::49
Square of :: 8 is ::64
Square of :: 9 is ::81
Square of :: 10 is ::100
Square of :: 11 is ::121
Square of :: 12 is ::144
Square of :: 13 is ::169
Square of :: 14 is ::196
index of :: Purple :: from color ::3
index of :: Black :: from color ::-1
index of :: Green :: from color ::-1
last index of :: Red :: from color ::5
join :: from oddNums ::1,3,5,7,9
join by - :: from oddNums ::1-3-5-7-9
Square All :: From evenOddMix :: 1,4,9,16,25,36,49,64,81,100,121,144,169,196
pop :: from shape ::Pyramid
shape array after pop now ::Triangle,Square,Rectangle
shift :: from shape :: Triangle
shape array after shift now ::Square,Rectangle
shift :: from shape :: 3
shape array after unshift now ::Circle,Square,Rectangle
shape array after push now :Circle,Square,Rectangle,Rhombus,Trapezium
reduce to sum :: from evenNums ::30
reduce from right to single string :: from color :: all color are ::Red & Violet & Purple & Yellow & Green & Red
reduce from left to single string :: from color :: all color are ::Red & Green & Yellow & Purple & Violet & Red
Revere :: from array shape :: Trapezium,Rhombus,Rectangle,Square,Circle
slice 0 to 2 :: from color array ::Red,Green
sort simple by lexically :: from evenOddMix :: 1,10,11,12,13,14,2,3,4,5,6,7,8,9
sort  numbers :: from evenOddMix :: 1,2,3,4,5,6,7,8,9,10,11,12,13,14
toString :: from evenOddMix :: 1,2,3,4,5,6,7,8,9,10,11,12,13,14

Categories
ECMAScript Javascript

Arrays

/**
 * to demonstrate working with Arrays in JS
 */

var colors; // declare
colors=["red","green","orange","black","Purple"]; //initialize with content as Array of Strings
console.log("colors.length::"+colors.length);
console.log("color at index 0 : "+colors[0]);


var squares = new Array(5);//to allocate sized array using array constructor
for(var i=0;i<5;i++)
	squares[i]=(i)*(i);
console.log("Array of squares ::"+squares);
console.log("size of squares arrah ::"+squares.length);


Output

Categories
ECMAScript Javascript

Arrow Function

/**
 * To demonstrate Arrow function or Lamdba function
 */
var getSquare = (X)=>X*X;
var getModulus = (X,Y)=>X%Y;

var num = 10;
var num1=25, num2=3;

console.log("num : "+num+", square is :" + getSquare(10));

console.log("X, Y are ::"+num1+","+num2+", Modulus is ::"+getModulus(num1,num2));

Output

Design a site like this with WordPress.com
Get started