SlideShare a Scribd company logo
Journey To The Front End World
Part : 3
BY IRFAN MAULANA
The Machine :
Dynamic World in JavaScript
Who am I ?
• Name : Irfan Maulana
• Job : Software Development Engineer at Blibli.com
• Front End Developer for last 4 year
console.info(“Who am I?")
Pre-Warning !
• This slide contain basic knowledge in front end side, if you feel you
are too big, please don’t read this slide.
• This slide may contain subjective perception from the author, if you
have different thinking please don’t let me know .
Getting to know JS
• JavaScript (JS) is a lightweight, interpreted, programming
language with first-class functions. While it is most well-known as
the scripting language forWeb pages, many non-browser
environments also use it, such as node.js and Apache CouchDB. JS
is a prototype-based, multi-paradigm, dynamic scripting
language, supporting object-oriented, imperative, and declarative
(e.g. functional programming) styles
Getting to know JS
• JavaScript contains a standard library of objects, such as Array, Date,
and Math, and a core set of language elements such as operators,
control structures, and statements. Core JavaScript can be extended
for a variety of purposes by supplementing it with additional objects;
Getting to know JS
• JavaScript is the beginning of its works to make the interaction
between user and the website becomes more quickly without having
to wait for processing in the web server.
• Before JavaScript, any interaction from the user must be processed
by the web server.
• Imagine when we fill out the registration form for the registration of a
website, and then to click the submit button, wait about 10 seconds
for a website to process the form field, and found a page stating that
there is a column form is still not filled.
About ECMAScript (ES)
European Computer Manufacturers Association
ECMAScript (or ES)[1] is a trademarked[2] scripting-
language specification standardized by Ecma International in ECMA-
262 and ISO/IEC 16262.
It was based on JavaScript, which now tracks ECMAScript.
It is commonly used for client-side scripting on the WorldWide Web.
Other implementations of ECMAScript
include JScript and ActionScript.
About DOM
The Document Object Model (DOM) is anAPI for HTML and XML
documents.
It provides a structural representation of the document, enabling you
to modify its content and visual presentation by using a scripting
language such as JavaScript.
See more at Mozilla Developer Network - DOM.
DOM Tree
Browser Tool
• Use google chrome development tools console to start Javasript
exercise
• First, right click anywhere on the screen and hit Inspect Element,
then click on the Console tab.You should see a thingy that looks like
this:
Browser Tool
• Use google chrome development tools console to start Javasript
exercise
• First, right click anywhere on the screen and hit Inspect Element,
then click on the Console tab.You should see a thingy that looks like
this:
Declarations
var
Declares a variable, optionally initializing it to a value.
let
Declares a block scope local variable, optionally initializing it to
a value.
const
Declares a read-only named constant.
Data Types
•Six data types that are primitives:
•Boolean. true and false.
•null. A special keyword denoting a null value.
Because JavaScript is case-sensitive, null is not the same
as Null, NULL, or any other variant.
•undefined. A top-level property whose value is undefined.
•Number. 42 or 3.14159.
•String. "Howdy"
•Symbol (new in ECMAScript 2015). A data type whose instances
are unique and immutable.
•and Object
Operators
Operator Explanation Symbol(s) Example
add/concatenation
Used to add two numbers
together, or glue two strings
together.
+
6 + 9;
"Hello " + "world!";
subtract, multiply, divide
These do what you'd expect
them to do in basic math.
-, *, /
9 - 3;
8 * 2;
9 / 3;
assignment operator
You've seen this already: it
assigns a value to a variable.
= var myVariable = 'Bob';
Identity operator
Does a test to see if two
values are equal to one
another, and returns
a true/false(Boolean) result.
===
var myVariable = 3;
myVariable === 4;
Negation, not equal
Returns the logically
opposite value of what it
preceeds; it turns a true into
a false,
!, !==
The basic expression is true,
but the comparison returns
false because we've negated
it:
Conditional
The most common one is the if statement.
Essentially, you're saying, "If this condition is true, do the following...".
For example:
Loop - for
Loop - while
Functions
Function can be re-use your logic that repeatedly calling.
Scope
A variable name has to be unique within the same scope -- there can't
be two different a variables sitting right next to each other. But the
same variable name a could appear in different scopes.
JS Code Convention
• Google code convention
https://google.github.io/styleguide/javascriptguide.xml
• Airbnb
https://github.com/airbnb/javascript
• Idiomatic Style Manifesto
https://github.com/rwaldron/idiomatic.js
Hands On
• We have our latest HTML and CSS code here :
https://github.com/mazipan/journey-to-the-frontend-
world/tree/master/part-2
• So, we will add more JS for interactions :
//YourTask : Add CRUD interaction with LocalStorage API
here the cheatsheet code :
https://github.com/mazipan/journey-to-the-frontend-
world/tree/master/part-3
Next Step
• Async and Performance :
https://github.com/getify/You-Dont-Know-
JS/blob/master/async%20&%20performance/README.md#you-
dont-know-js-async--performance
• ES 6 Learn :
https://github.com/getify/You-Dont-Know-
JS/blob/master/es6%20&%20beyond/README.md#you-dont-know-
js-es6--beyond
Reference
• https://developer.mozilla.org/en-US/docs/Web/JavaScript
• http://www.w3schools.com/js/
• https://github.com/getify/You-Dont-Know-JS
• http://jsforcats.com/
• https://github.com/feross/standard/
• https://sivers.org/learn-js
Contact Me
o Facebook : /mazipanneh
o Twitter : @mazipan
o Linkedin : /in/irfanmaulanamazipan
o Slideshare : /IrfanMaulana21
o Github : mazipan
o Email : mazipanneh@gmail.com
o Blog : mazipanneh , mazipan.github.io
ThankYou

More Related Content

PPTX
Php Indonesia x Bliblidotcom - Architecting Scalable CSS
Irfan Maulana
 
PPTX
Catch 22: FLex APps
Yash Mody
 
PDF
WebAssembly in Houdini CSS, is it possible?
Alexandr Skachkov
 
PPTX
Java script
19TUIT038KAVIARASUM
 
PPTX
Single Page Application Development with backbone.js and Simple.Web
Chris Canal
 
PDF
TDD a REST API With Node.js and MongoDB
Valeri Karpov
 
PPTX
How to make WordPress your friend
Kerch McConlogue
 
PDF
Moving from PHP to a nodejs full stack CMS
Make & Build
 
Php Indonesia x Bliblidotcom - Architecting Scalable CSS
Irfan Maulana
 
Catch 22: FLex APps
Yash Mody
 
WebAssembly in Houdini CSS, is it possible?
Alexandr Skachkov
 
Java script
19TUIT038KAVIARASUM
 
Single Page Application Development with backbone.js and Simple.Web
Chris Canal
 
TDD a REST API With Node.js and MongoDB
Valeri Karpov
 
How to make WordPress your friend
Kerch McConlogue
 
Moving from PHP to a nodejs full stack CMS
Make & Build
 

What's hot (20)

PDF
Adobe AEM for Business Heads
Yash Mody
 
PPTX
Single page application and Framework
Chandrasekar G
 
PDF
Miami2015
DevinVinson
 
PDF
Tech Stack Ideas
nsclark
 
KEY
ClubAJAX Basics - Server Communication
Mike Wilcox
 
PPT
Web development basics (Part-3)
Rajat Pratap Singh
 
PPTX
Introdcution to Adobe CQ
Rest West
 
PDF
Introduction to web development
Iftekher Islam Sunny
 
PPTX
MEAN Stack
RoshanTak1
 
PPTX
Adobe CQ5 for Developers - Introduction
Tekno Point
 
PPTX
Angular.js in XPages
Mark Roden
 
PDF
Introduction To Single Page Application
KMS Technology
 
PPTX
CQ5 Development Setup, Maven Build and Deployment
klcodanr
 
PPTX
Iconus 2016
Mark Roden
 
PPTX
MEAN Stack - Introduction & Advantages - Why should you switch to MEAN stack ...
Hariharan Ganesan
 
PPTX
WebAssembly overview. KievJS meetup
Alexandr Skachkov
 
PDF
MEAN Stack
Krishnaprasad k
 
PDF
Joomla! multiplied - How to run Multi-Sites - JandBeyond 2014
Viktor Vogel
 
PPTX
Introduction to Web Technology Stacks
Prakarsh -
 
PPTX
Introduction to wordpress & theme implementation
www.netgains.org
 
Adobe AEM for Business Heads
Yash Mody
 
Single page application and Framework
Chandrasekar G
 
Miami2015
DevinVinson
 
Tech Stack Ideas
nsclark
 
ClubAJAX Basics - Server Communication
Mike Wilcox
 
Web development basics (Part-3)
Rajat Pratap Singh
 
Introdcution to Adobe CQ
Rest West
 
Introduction to web development
Iftekher Islam Sunny
 
MEAN Stack
RoshanTak1
 
Adobe CQ5 for Developers - Introduction
Tekno Point
 
Angular.js in XPages
Mark Roden
 
Introduction To Single Page Application
KMS Technology
 
CQ5 Development Setup, Maven Build and Deployment
klcodanr
 
Iconus 2016
Mark Roden
 
MEAN Stack - Introduction & Advantages - Why should you switch to MEAN stack ...
Hariharan Ganesan
 
WebAssembly overview. KievJS meetup
Alexandr Skachkov
 
MEAN Stack
Krishnaprasad k
 
Joomla! multiplied - How to run Multi-Sites - JandBeyond 2014
Viktor Vogel
 
Introduction to Web Technology Stacks
Prakarsh -
 
Introduction to wordpress & theme implementation
www.netgains.org
 
Ad

Viewers also liked (20)

PPTX
Journey To The Front End World - Part2 - The Cosmetic
Irfan Maulana
 
PPTX
Journey To The Front End World - Part1 - The Skeleton
Irfan Maulana
 
PDF
conjoon - The Open Source Webmail Client
Thorsten Suckow-Homberg
 
PPTX
Bliblidotcom - SASS Introduction
Irfan Maulana
 
PPTX
Sencha ExtJs Learning Part 1 - Layout And Container in Sencha ExtJs - By Irfa...
Irfan Maulana
 
PPTX
Sencha ExtJs Learning Part 2 - MVC And MVVM Architecture in ExtJs [ENGLISH]
Irfan Maulana
 
PPTX
Présentation JavaScript
tarkan_
 
PPTX
Web Designing Training In Ambala! BATRA COMPUTER CENTRE
jatin batra
 
PPTX
Lesson learned in developing UI and mobile apps blibli.com
ifnu bima
 
PDF
Javascript
Momentum Design Lab
 
PPS
email clients and webmail (presentation)
kay2
 
PDF
CP 值很高的 Gulp
Yvonne Yu
 
PPTX
An Overview of HTML, CSS & Java Script
Fahim Abdullah
 
PDF
Fundamental JavaScript [UTC, March 2014]
Aaron Gustafson
 
PDF
Introduction to JavaScript
Bryan Basham
 
PDF
16 Web & Graphic Design Trends to Watch in 2016
Ernesto Olivares
 
PPT
Introduction to Javascript
Amit Tyagi
 
PPT
Javascript
guest03a6e6
 
PPTX
Web designing avdhesh
Avdhesh Kushwah
 
Journey To The Front End World - Part2 - The Cosmetic
Irfan Maulana
 
Journey To The Front End World - Part1 - The Skeleton
Irfan Maulana
 
conjoon - The Open Source Webmail Client
Thorsten Suckow-Homberg
 
Bliblidotcom - SASS Introduction
Irfan Maulana
 
Sencha ExtJs Learning Part 1 - Layout And Container in Sencha ExtJs - By Irfa...
Irfan Maulana
 
Sencha ExtJs Learning Part 2 - MVC And MVVM Architecture in ExtJs [ENGLISH]
Irfan Maulana
 
Présentation JavaScript
tarkan_
 
Web Designing Training In Ambala! BATRA COMPUTER CENTRE
jatin batra
 
Lesson learned in developing UI and mobile apps blibli.com
ifnu bima
 
email clients and webmail (presentation)
kay2
 
CP 值很高的 Gulp
Yvonne Yu
 
An Overview of HTML, CSS & Java Script
Fahim Abdullah
 
Fundamental JavaScript [UTC, March 2014]
Aaron Gustafson
 
Introduction to JavaScript
Bryan Basham
 
16 Web & Graphic Design Trends to Watch in 2016
Ernesto Olivares
 
Introduction to Javascript
Amit Tyagi
 
Javascript
guest03a6e6
 
Web designing avdhesh
Avdhesh Kushwah
 
Ad

Similar to Journey To The Front End World - Part3 - The Machine (20)

PPTX
Java script
Sukrit Gupta
 
PPTX
Introduction to JavaScript - Web Programming
tyfeng7
 
PPTX
JavaScript : A trending scripting language
AbhayDhupar
 
PDF
Thinkful - Intro to JavaScript
TJ Stalcup
 
PDF
Intro to JavaScript - Thinkful LA, June 2017
Thinkful
 
PDF
Intro to javascript (6:19)
Thinkful
 
PPSX
Core Java Basics
Fayis-QA
 
DOCX
LabsLab8.htmlLab 8 Im Thinking of a NumberBefore yo.docx
DIPESH30
 
PDF
JavaScript nicht nur für Programmierer: Einblicke in die weltweit am meisten ...
Peter Hecker
 
PPTX
WT Module-3.pptx
RamyaH11
 
PPT
Introduction to JavaScript
Andres Baravalle
 
PPTX
All of Javascript
Togakangaroo
 
PDF
Intro to javascript (6:27)
David Coulter
 
PDF
Instagram filters
Thinkful
 
PDF
JavaScript
Ivano Malavolta
 
PPTX
Yeahhhh the final requirement!!!
olracoatalub
 
PDF
Basic JavaScript Tutorial
DHTMLExtreme
 
PDF
Intro to JavaScript
Dan Phiffer
 
PPTX
Java script
Jay Patel
 
PDF
Intro to javascript (5:2)
Thinkful
 
Java script
Sukrit Gupta
 
Introduction to JavaScript - Web Programming
tyfeng7
 
JavaScript : A trending scripting language
AbhayDhupar
 
Thinkful - Intro to JavaScript
TJ Stalcup
 
Intro to JavaScript - Thinkful LA, June 2017
Thinkful
 
Intro to javascript (6:19)
Thinkful
 
Core Java Basics
Fayis-QA
 
LabsLab8.htmlLab 8 Im Thinking of a NumberBefore yo.docx
DIPESH30
 
JavaScript nicht nur für Programmierer: Einblicke in die weltweit am meisten ...
Peter Hecker
 
WT Module-3.pptx
RamyaH11
 
Introduction to JavaScript
Andres Baravalle
 
All of Javascript
Togakangaroo
 
Intro to javascript (6:27)
David Coulter
 
Instagram filters
Thinkful
 
JavaScript
Ivano Malavolta
 
Yeahhhh the final requirement!!!
olracoatalub
 
Basic JavaScript Tutorial
DHTMLExtreme
 
Intro to JavaScript
Dan Phiffer
 
Java script
Jay Patel
 
Intro to javascript (5:2)
Thinkful
 

More from Irfan Maulana (16)

PPTX
Modern Web - an Introduction
Irfan Maulana
 
PDF
Unit Testing for Frontend Code at Blibli.com
Irfan Maulana
 
PPTX
Programmer In Startup Era
Irfan Maulana
 
PPTX
Bliblidotcom - Evolusi Frontend Development di Bliblidotcom
Irfan Maulana
 
PPTX
Bliblidotcom - Tech In Asia PDC 2017 Takeaway
Irfan Maulana
 
PPTX
Bliblidotcom - AMP And PWA
Irfan Maulana
 
PPTX
Angular - The Return of The King
Irfan Maulana
 
PPTX
How to Become Rockstar Programmer
Irfan Maulana
 
PPTX
Bliblidotcom - AngularJS Introduction
Irfan Maulana
 
PPTX
Bliblidotcom - Reintroduction BEM CSS
Irfan Maulana
 
PPTX
PHP Indonesia - Understanding UI UX from Developer Side
Irfan Maulana
 
PPTX
JakartaJS - How I Learn Javascript From Basic
Irfan Maulana
 
PPTX
PHP Indonesia - Nodejs Web Development
Irfan Maulana
 
PPTX
[Blibli Brown Bag] Nodejs - The Other Side of Javascript
Irfan Maulana
 
PPTX
Create Rest API in Nodejs
Irfan Maulana
 
PPTX
Irfan Maulana - Career Journey
Irfan Maulana
 
Modern Web - an Introduction
Irfan Maulana
 
Unit Testing for Frontend Code at Blibli.com
Irfan Maulana
 
Programmer In Startup Era
Irfan Maulana
 
Bliblidotcom - Evolusi Frontend Development di Bliblidotcom
Irfan Maulana
 
Bliblidotcom - Tech In Asia PDC 2017 Takeaway
Irfan Maulana
 
Bliblidotcom - AMP And PWA
Irfan Maulana
 
Angular - The Return of The King
Irfan Maulana
 
How to Become Rockstar Programmer
Irfan Maulana
 
Bliblidotcom - AngularJS Introduction
Irfan Maulana
 
Bliblidotcom - Reintroduction BEM CSS
Irfan Maulana
 
PHP Indonesia - Understanding UI UX from Developer Side
Irfan Maulana
 
JakartaJS - How I Learn Javascript From Basic
Irfan Maulana
 
PHP Indonesia - Nodejs Web Development
Irfan Maulana
 
[Blibli Brown Bag] Nodejs - The Other Side of Javascript
Irfan Maulana
 
Create Rest API in Nodejs
Irfan Maulana
 
Irfan Maulana - Career Journey
Irfan Maulana
 

Recently uploaded (20)

PPTX
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
PDF
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
PDF
The Future of Artificial Intelligence (AI)
Mukul
 
PPTX
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
PPTX
Introduction to Flutter by Ayush Desai.pptx
ayushdesai204
 
PDF
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
PDF
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
PDF
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
PDF
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
 
PPTX
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
PDF
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
PDF
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
PPTX
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
 
PDF
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
PDF
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
 
PDF
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
PPTX
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
PDF
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
The Future of Artificial Intelligence (AI)
Mukul
 
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
Introduction to Flutter by Ayush Desai.pptx
ayushdesai204
 
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
 
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
 
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
 
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 

Journey To The Front End World - Part3 - The Machine

  • 1. Journey To The Front End World Part : 3 BY IRFAN MAULANA The Machine : Dynamic World in JavaScript
  • 2. Who am I ? • Name : Irfan Maulana • Job : Software Development Engineer at Blibli.com • Front End Developer for last 4 year console.info(“Who am I?")
  • 3. Pre-Warning ! • This slide contain basic knowledge in front end side, if you feel you are too big, please don’t read this slide. • This slide may contain subjective perception from the author, if you have different thinking please don’t let me know .
  • 4. Getting to know JS • JavaScript (JS) is a lightweight, interpreted, programming language with first-class functions. While it is most well-known as the scripting language forWeb pages, many non-browser environments also use it, such as node.js and Apache CouchDB. JS is a prototype-based, multi-paradigm, dynamic scripting language, supporting object-oriented, imperative, and declarative (e.g. functional programming) styles
  • 5. Getting to know JS • JavaScript contains a standard library of objects, such as Array, Date, and Math, and a core set of language elements such as operators, control structures, and statements. Core JavaScript can be extended for a variety of purposes by supplementing it with additional objects;
  • 6. Getting to know JS • JavaScript is the beginning of its works to make the interaction between user and the website becomes more quickly without having to wait for processing in the web server. • Before JavaScript, any interaction from the user must be processed by the web server. • Imagine when we fill out the registration form for the registration of a website, and then to click the submit button, wait about 10 seconds for a website to process the form field, and found a page stating that there is a column form is still not filled.
  • 7. About ECMAScript (ES) European Computer Manufacturers Association ECMAScript (or ES)[1] is a trademarked[2] scripting- language specification standardized by Ecma International in ECMA- 262 and ISO/IEC 16262. It was based on JavaScript, which now tracks ECMAScript. It is commonly used for client-side scripting on the WorldWide Web. Other implementations of ECMAScript include JScript and ActionScript.
  • 8. About DOM The Document Object Model (DOM) is anAPI for HTML and XML documents. It provides a structural representation of the document, enabling you to modify its content and visual presentation by using a scripting language such as JavaScript. See more at Mozilla Developer Network - DOM.
  • 10. Browser Tool • Use google chrome development tools console to start Javasript exercise • First, right click anywhere on the screen and hit Inspect Element, then click on the Console tab.You should see a thingy that looks like this:
  • 11. Browser Tool • Use google chrome development tools console to start Javasript exercise • First, right click anywhere on the screen and hit Inspect Element, then click on the Console tab.You should see a thingy that looks like this:
  • 12. Declarations var Declares a variable, optionally initializing it to a value. let Declares a block scope local variable, optionally initializing it to a value. const Declares a read-only named constant.
  • 13. Data Types •Six data types that are primitives: •Boolean. true and false. •null. A special keyword denoting a null value. Because JavaScript is case-sensitive, null is not the same as Null, NULL, or any other variant. •undefined. A top-level property whose value is undefined. •Number. 42 or 3.14159. •String. "Howdy" •Symbol (new in ECMAScript 2015). A data type whose instances are unique and immutable. •and Object
  • 14. Operators Operator Explanation Symbol(s) Example add/concatenation Used to add two numbers together, or glue two strings together. + 6 + 9; "Hello " + "world!"; subtract, multiply, divide These do what you'd expect them to do in basic math. -, *, / 9 - 3; 8 * 2; 9 / 3; assignment operator You've seen this already: it assigns a value to a variable. = var myVariable = 'Bob'; Identity operator Does a test to see if two values are equal to one another, and returns a true/false(Boolean) result. === var myVariable = 3; myVariable === 4; Negation, not equal Returns the logically opposite value of what it preceeds; it turns a true into a false, !, !== The basic expression is true, but the comparison returns false because we've negated it:
  • 15. Conditional The most common one is the if statement. Essentially, you're saying, "If this condition is true, do the following...". For example:
  • 18. Functions Function can be re-use your logic that repeatedly calling.
  • 19. Scope A variable name has to be unique within the same scope -- there can't be two different a variables sitting right next to each other. But the same variable name a could appear in different scopes.
  • 20. JS Code Convention • Google code convention https://google.github.io/styleguide/javascriptguide.xml • Airbnb https://github.com/airbnb/javascript • Idiomatic Style Manifesto https://github.com/rwaldron/idiomatic.js
  • 21. Hands On • We have our latest HTML and CSS code here : https://github.com/mazipan/journey-to-the-frontend- world/tree/master/part-2 • So, we will add more JS for interactions : //YourTask : Add CRUD interaction with LocalStorage API here the cheatsheet code : https://github.com/mazipan/journey-to-the-frontend- world/tree/master/part-3
  • 22. Next Step • Async and Performance : https://github.com/getify/You-Dont-Know- JS/blob/master/async%20&%20performance/README.md#you- dont-know-js-async--performance • ES 6 Learn : https://github.com/getify/You-Dont-Know- JS/blob/master/es6%20&%20beyond/README.md#you-dont-know- js-es6--beyond
  • 23. Reference • https://developer.mozilla.org/en-US/docs/Web/JavaScript • http://www.w3schools.com/js/ • https://github.com/getify/You-Dont-Know-JS • http://jsforcats.com/ • https://github.com/feross/standard/ • https://sivers.org/learn-js
  • 24. Contact Me o Facebook : /mazipanneh o Twitter : @mazipan o Linkedin : /in/irfanmaulanamazipan o Slideshare : /IrfanMaulana21 o Github : mazipan o Email : [email protected] o Blog : mazipanneh , mazipan.github.io