SlideShare a Scribd company logo
JavaScript Introduction Aaron Conran Text: JavaScript The Definitive Guide By David Flannagan
Case Sensitive Example:  myVar  myVAr These are not the same variable.
(Optional) Semicolons JavaScript allows you to omit semicolons at the end of your statements. However this can create nasty bugs and cause difficult to debug problems. Use them at the end of statements and make your life easier.
Comments JavaScript supports both C and C++ style comments // this is a comment /* this is another comment */
Comments (JSDoc) Comments which begin with /** Note the 2 stars will be picked up by JSDoc JSDoc allows you to document your JavaScript classes in a formal manner similar to JavaDoc. Allows code and documentation to always be synchronized. For more information: http://jsdoc.sourceforge.net/
JavaScript Reserved Words Avoid the use of reserved words as variables and function names in your JavaScript.  For a full list Flanagan p19-20 Examples: break if switch in class
JavaScript DataTypes Numbers Strings Booleans Functions Objects Arrays null undefined Date Error
Numbers Integer (whole) Hexadecimal & Octal Floating-points (decimal) You can add, multiply divide and subtract numbers with their respective operator: +, *, /, & - The  Math  library of JavaScript also exposes a number of useful methods: Math.abs(num) Math.sin(num) Math.ceil(num) Full reference p 659-669
Special Numeric Values  (Table 3-1) p25 Special value to represent negative infinity Number.NEGATIVE_INFINITY Special value to represent infinity Number.POSTIVE_INFINITY Special not a number value Number.NaN Smallest (closest to zero) representable number Number.MIN_VALUE Largest representable number Number.MAX_VALUE Special not-a-number value NaN Special value to represent infinity Infinity Meaning Constant
Strings “ zero or more Unicode characters enclosed within single or double quotes” Examples: “” ‘ myForm’ “ testing” “ This is a longer string”
Escape Sequences To encode special values like new lines and ‘s in JavaScript strings you utilize a backslash Example: var menuText = ‘What\’s this?’;
Escape Sequences (Table 3-2) p27 The Latin-1 character specified by the octal digits XXX, between 1 and 377. Not support by ECMAScript v3; do not use this escpae sequence. \XXX The Unicode character specified by the four hexadecimal digits XXXX \uXXXX The Latin-1 character specified by the two hexadecimal digits XX \xXX Backslash (\u005C) \\ Apostrophe or single quote (u\0027) \’ Double quote (u\0022) \” Carriage return (u\000D) \r Form feed (\u000C) \f Vertical tab (\u000B) \v Newline (\u000A) \n Horizontal tab (\u0009) \t Backspace (\u0008) \b The NUL character (\u0000) \0 Character represented Sequence
Adding Strings You can also add (or concatenate) strings simply by adding them. Example: var anotherString = ‘new’; var newVariable = ‘Something ‘ + anotherString; When adding numbers they will automatically be converting to strings. Example: var x = 12; var newString = x + ‘ dozen eggs’;
Converting Strings To Numbers Utilize the parse Number  utility functions to extract numbers from strings. parseInt parseFloat Example: var x = “11”; var xNum = parseInt(x);
Booleans true (Other truthy values) 1 {} ‘ ‘  - space ‘ my String’ false (Other falsey values) undefined null 0 “” –  empty string
Equals vs Strictly Equals There is a strictly equals operator in JavaScript which will also check type as well as value. To show how this relates to boolean values: == Equals Works for Truthy values === Strictly Equals Works for truth only != Not Equals Works for Falsey values !== Strictly Not Equals Works for false only
Objects JavaScript Objects are similar to ColdFusion Structures. They consist of zero to many key-value pairs. They can be nested infinitely deep. They provide an associative array or hash map. Example: // using the Object constructor var newObj = new Object(); newObj.x = 10; newObj.y = 20; // OR using the Object literal syntax var newObj = {x: 10, y: 20};
Object Literal Object literal is the preferred way to create objects because it is concise and consistent with JSON-syntax. When utilizing object literal syntax key value pairs are separated by colon’s. Keys are called properties
Functions Functions are actually a datatype too Example: var myFn = function() {console.log(‘hi’);}; function myFn() {console.log(‘hi’);} These are 2 different ways of defining a similar function. There is also a Function constructor, however it’s use is limited because it can only create functions in the global scope.
Functions as Properties Properties of Objects can be any data type including Functions. Example: var myObject = {myFun: function() {console.log(‘hi’);}}; myObject.myFun();
Arrays Arrays can be defined using 2 syntaxes as well. Example: // Utilizing the Array constructor var myArray = new Array(); myArray[0] = 12; myArray[1] = 232; // OR using the Array literal syntax. var myArray = [12,232];
Arrays (cont.) Arrays can be infinitely nested Arrays can be sparse Arrays can store unlike datatypes Full reference available p 602-611 Arrays provide a number of useful properties and methods such as: length – property which defines how many elements are in the Array push – method which pushes another element on the Array when utilized as a Stack pop – method which pops an element off an Array when utilized as a Stack
null vs undefined null “ null  is a special keyword which indicates no value” undefined “ undefined  is returned when you use either a variable that has not been declared but never had a value assigned to it or an object property that does not exist”
null vs undefined Both of these equate to a  falsey  value. var myVar; // what is the value of myVar?

More Related Content

What's hot (20)

PDF
Real World Haskell: Lecture 6
Bryan O'Sullivan
 
PDF
Effective PHP. Part 1
Vasily Kartashov
 
PDF
Effective PHP. Part 2
Vasily Kartashov
 
PPTX
Java script arrays
Frayosh Wadia
 
PDF
Strings in c language
Infinity Tech Solutions
 
PDF
Effective PHP. Part 5
Vasily Kartashov
 
DOC
Lesson 5
Vinnu Vinay
 
KEY
RFC4627 Reading
Yuuki Tan-nai
 
PPTX
The JavaScript Programming Language
Mohammed Irfan Shaikh
 
PDF
Effective PHP. Part 3
Vasily Kartashov
 
PDF
Cross platform native development in f#
David Kay
 
PDF
Scala Paradigms
Tom Flaherty
 
PPTX
Complete Notes on Angular 2 and TypeScript
EPAM Systems
 
PDF
Real World Haskell: Lecture 2
Bryan O'Sullivan
 
PPTX
function, storage class and array and strings
Rai University
 
PPTX
Data types in php
ilakkiya
 
PDF
Suit case class
Didier Plaindoux
 
PPT
C# programming
umesh patil
 
PPTX
Mcai pic u 4 function, storage class and array and strings
Rai University
 
Real World Haskell: Lecture 6
Bryan O'Sullivan
 
Effective PHP. Part 1
Vasily Kartashov
 
Effective PHP. Part 2
Vasily Kartashov
 
Java script arrays
Frayosh Wadia
 
Strings in c language
Infinity Tech Solutions
 
Effective PHP. Part 5
Vasily Kartashov
 
Lesson 5
Vinnu Vinay
 
RFC4627 Reading
Yuuki Tan-nai
 
The JavaScript Programming Language
Mohammed Irfan Shaikh
 
Effective PHP. Part 3
Vasily Kartashov
 
Cross platform native development in f#
David Kay
 
Scala Paradigms
Tom Flaherty
 
Complete Notes on Angular 2 and TypeScript
EPAM Systems
 
Real World Haskell: Lecture 2
Bryan O'Sullivan
 
function, storage class and array and strings
Rai University
 
Data types in php
ilakkiya
 
Suit case class
Didier Plaindoux
 
C# programming
umesh patil
 
Mcai pic u 4 function, storage class and array and strings
Rai University
 

Viewers also liked (8)

KEY
Introduction to javascript
Syd Lawrence
 
PDF
Intro to JavaScript
Dan Phiffer
 
PDF
8 introduction to_java_script
Vijay Kalyan
 
PPTX
Java script
Shyam Khant
 
PPT
Java script
Fajar Baskoro
 
PPTX
Session 3 Java Script
Muhammad Hesham
 
PPTX
What is Big Data?
Bernard Marr
 
PPTX
Big data ppt
Nasrin Hussain
 
Introduction to javascript
Syd Lawrence
 
Intro to JavaScript
Dan Phiffer
 
8 introduction to_java_script
Vijay Kalyan
 
Java script
Shyam Khant
 
Java script
Fajar Baskoro
 
Session 3 Java Script
Muhammad Hesham
 
What is Big Data?
Bernard Marr
 
Big data ppt
Nasrin Hussain
 
Ad

Similar to Java Script Introduction (20)

PPTX
JavaScript.pptx
Govardhan Bhavani
 
PPT
Javascript
Manav Prasad
 
PPT
An introduction to javascript
MD Sayem Ahmed
 
PPT
JavaScript Tutorial
Bui Kiet
 
PPTX
javascript
Kaya Ota
 
PDF
JavaScript(Es5) Interview Questions & Answers
Ratnala Charan kumar
 
PPT
JavaScript - An Introduction
Manvendra Singh
 
PPTX
Intro to Scala
manaswinimysore
 
PPT
Ajax and JavaScript Bootcamp
AndreCharland
 
PPT
Javascript sivasoft
ch samaram
 
PPT
Java script final presentation
Adhoura Academy
 
PPTX
Javascript
Gita Kriz
 
PPT
Scala Talk at FOSDEM 2009
Martin Odersky
 
PPTX
Perl slid
pacatarpit
 
PPTX
Introduction to es6
NexThoughts Technologies
 
PPTX
JavaScript.pptx
KennyPratheepKumar
 
PDF
JavaScript Programming
Sehwan Noh
 
PDF
vb.net.pdf
VimalSangar1
 
PPTX
Chap1introppt2php(finally done)
monikadeshmane
 
PPTX
03. Week 03.pptx
Vinc2ntCabrera
 
JavaScript.pptx
Govardhan Bhavani
 
Javascript
Manav Prasad
 
An introduction to javascript
MD Sayem Ahmed
 
JavaScript Tutorial
Bui Kiet
 
javascript
Kaya Ota
 
JavaScript(Es5) Interview Questions & Answers
Ratnala Charan kumar
 
JavaScript - An Introduction
Manvendra Singh
 
Intro to Scala
manaswinimysore
 
Ajax and JavaScript Bootcamp
AndreCharland
 
Javascript sivasoft
ch samaram
 
Java script final presentation
Adhoura Academy
 
Javascript
Gita Kriz
 
Scala Talk at FOSDEM 2009
Martin Odersky
 
Perl slid
pacatarpit
 
Introduction to es6
NexThoughts Technologies
 
JavaScript.pptx
KennyPratheepKumar
 
JavaScript Programming
Sehwan Noh
 
vb.net.pdf
VimalSangar1
 
Chap1introppt2php(finally done)
monikadeshmane
 
03. Week 03.pptx
Vinc2ntCabrera
 
Ad

More from jason hu 金良胡 (20)

PPT
新员工培训
jason hu 金良胡
 
PDF
Javascript 闭包
jason hu 金良胡
 
PDF
Windows Powershell En
jason hu 金良胡
 
PDF
正则表达式
jason hu 金良胡
 
PDF
Work In Japan
jason hu 金良胡
 
PDF
Linuxcommand
jason hu 金良胡
 
PDF
Ubunturef
jason hu 金良胡
 
PDF
Asp.Net运行时
jason hu 金良胡
 
PDF
Fwunixref
jason hu 金良胡
 
PDF
X Query
jason hu 金良胡
 
PPT
Sql2005 Xml
jason hu 金良胡
 
PDF
Ms Ajax Dom Element Class
jason hu 金良胡
 
PDF
Ms Ajax Dom Element Class
jason hu 金良胡
 
PDF
Ms Ajax Number And Error Extensions
jason hu 金良胡
 
PDF
Ms Ajax Dom Event Class
jason hu 金良胡
 
PDF
Ms Ajax Date And Boolean Extensions
jason hu 金良胡
 
PDF
Ms Ajax Array Extensions
jason hu 金良胡
 
PPT
Ext Js Events
jason hu 金良胡
 
PPT
Ext Js Dom Navigation
jason hu 金良胡
 
PPT
Ext Js Events
jason hu 金良胡
 
新员工培训
jason hu 金良胡
 
Javascript 闭包
jason hu 金良胡
 
Windows Powershell En
jason hu 金良胡
 
正则表达式
jason hu 金良胡
 
Work In Japan
jason hu 金良胡
 
Linuxcommand
jason hu 金良胡
 
Asp.Net运行时
jason hu 金良胡
 
Sql2005 Xml
jason hu 金良胡
 
Ms Ajax Dom Element Class
jason hu 金良胡
 
Ms Ajax Dom Element Class
jason hu 金良胡
 
Ms Ajax Number And Error Extensions
jason hu 金良胡
 
Ms Ajax Dom Event Class
jason hu 金良胡
 
Ms Ajax Date And Boolean Extensions
jason hu 金良胡
 
Ms Ajax Array Extensions
jason hu 金良胡
 
Ext Js Events
jason hu 金良胡
 
Ext Js Dom Navigation
jason hu 金良胡
 
Ext Js Events
jason hu 金良胡
 

Recently uploaded (20)

PDF
NewMind AI Weekly Chronicles – July’25, Week III
NewMind AI
 
PDF
UiPath on Tour London Community Booth Deck
UiPathCommunity
 
PPTX
AI Code Generation Risks (Ramkumar Dilli, CIO, Myridius)
Priyanka Aash
 
PDF
TrustArc Webinar - Navigating Data Privacy in LATAM: Laws, Trends, and Compli...
TrustArc
 
PDF
Generative AI in Healthcare: Benefits, Use Cases & Challenges
Lily Clark
 
PDF
Novus Safe Lite- What is Novus Safe Lite.pdf
Novus Hi-Tech
 
PDF
Productivity Management Software | Workstatus
Lovely Baghel
 
PDF
Arcee AI - building and working with small language models (06/25)
Julien SIMON
 
PDF
CIFDAQ'S Token Spotlight for 16th July 2025 - ALGORAND
CIFDAQ
 
PDF
NewMind AI Journal - Weekly Chronicles - July'25 Week II
NewMind AI
 
PDF
State-Dependent Conformal Perception Bounds for Neuro-Symbolic Verification
Ivan Ruchkin
 
PDF
Upskill to Agentic Automation 2025 - Kickoff Meeting
DianaGray10
 
PDF
Ampere Offers Energy-Efficient Future For AI And Cloud
ShapeBlue
 
PDF
HR agent at Mediq: Lessons learned on Agent Builder & Maestro by Tacstone Tec...
UiPathCommunity
 
PPTX
Lecture 5 - Agentic AI and model context protocol.pptx
Dr. LAM Yat-fai (林日辉)
 
PDF
The Past, Present & Future of Kenya's Digital Transformation
Moses Kemibaro
 
PPTX
Earn Agentblazer Status with Slack Community Patna.pptx
SanjeetMishra29
 
PDF
Lecture A - AI Workflows for Banking.pdf
Dr. LAM Yat-fai (林日辉)
 
PDF
Alpha Altcoin Setup : TIA - 19th July 2025
CIFDAQ
 
PDF
visibel.ai Company Profile – Real-Time AI Solution for CCTV
visibelaiproject
 
NewMind AI Weekly Chronicles – July’25, Week III
NewMind AI
 
UiPath on Tour London Community Booth Deck
UiPathCommunity
 
AI Code Generation Risks (Ramkumar Dilli, CIO, Myridius)
Priyanka Aash
 
TrustArc Webinar - Navigating Data Privacy in LATAM: Laws, Trends, and Compli...
TrustArc
 
Generative AI in Healthcare: Benefits, Use Cases & Challenges
Lily Clark
 
Novus Safe Lite- What is Novus Safe Lite.pdf
Novus Hi-Tech
 
Productivity Management Software | Workstatus
Lovely Baghel
 
Arcee AI - building and working with small language models (06/25)
Julien SIMON
 
CIFDAQ'S Token Spotlight for 16th July 2025 - ALGORAND
CIFDAQ
 
NewMind AI Journal - Weekly Chronicles - July'25 Week II
NewMind AI
 
State-Dependent Conformal Perception Bounds for Neuro-Symbolic Verification
Ivan Ruchkin
 
Upskill to Agentic Automation 2025 - Kickoff Meeting
DianaGray10
 
Ampere Offers Energy-Efficient Future For AI And Cloud
ShapeBlue
 
HR agent at Mediq: Lessons learned on Agent Builder & Maestro by Tacstone Tec...
UiPathCommunity
 
Lecture 5 - Agentic AI and model context protocol.pptx
Dr. LAM Yat-fai (林日辉)
 
The Past, Present & Future of Kenya's Digital Transformation
Moses Kemibaro
 
Earn Agentblazer Status with Slack Community Patna.pptx
SanjeetMishra29
 
Lecture A - AI Workflows for Banking.pdf
Dr. LAM Yat-fai (林日辉)
 
Alpha Altcoin Setup : TIA - 19th July 2025
CIFDAQ
 
visibel.ai Company Profile – Real-Time AI Solution for CCTV
visibelaiproject
 

Java Script Introduction

  • 1. JavaScript Introduction Aaron Conran Text: JavaScript The Definitive Guide By David Flannagan
  • 2. Case Sensitive Example: myVar myVAr These are not the same variable.
  • 3. (Optional) Semicolons JavaScript allows you to omit semicolons at the end of your statements. However this can create nasty bugs and cause difficult to debug problems. Use them at the end of statements and make your life easier.
  • 4. Comments JavaScript supports both C and C++ style comments // this is a comment /* this is another comment */
  • 5. Comments (JSDoc) Comments which begin with /** Note the 2 stars will be picked up by JSDoc JSDoc allows you to document your JavaScript classes in a formal manner similar to JavaDoc. Allows code and documentation to always be synchronized. For more information: http://jsdoc.sourceforge.net/
  • 6. JavaScript Reserved Words Avoid the use of reserved words as variables and function names in your JavaScript. For a full list Flanagan p19-20 Examples: break if switch in class
  • 7. JavaScript DataTypes Numbers Strings Booleans Functions Objects Arrays null undefined Date Error
  • 8. Numbers Integer (whole) Hexadecimal & Octal Floating-points (decimal) You can add, multiply divide and subtract numbers with their respective operator: +, *, /, & - The Math library of JavaScript also exposes a number of useful methods: Math.abs(num) Math.sin(num) Math.ceil(num) Full reference p 659-669
  • 9. Special Numeric Values (Table 3-1) p25 Special value to represent negative infinity Number.NEGATIVE_INFINITY Special value to represent infinity Number.POSTIVE_INFINITY Special not a number value Number.NaN Smallest (closest to zero) representable number Number.MIN_VALUE Largest representable number Number.MAX_VALUE Special not-a-number value NaN Special value to represent infinity Infinity Meaning Constant
  • 10. Strings “ zero or more Unicode characters enclosed within single or double quotes” Examples: “” ‘ myForm’ “ testing” “ This is a longer string”
  • 11. Escape Sequences To encode special values like new lines and ‘s in JavaScript strings you utilize a backslash Example: var menuText = ‘What\’s this?’;
  • 12. Escape Sequences (Table 3-2) p27 The Latin-1 character specified by the octal digits XXX, between 1 and 377. Not support by ECMAScript v3; do not use this escpae sequence. \XXX The Unicode character specified by the four hexadecimal digits XXXX \uXXXX The Latin-1 character specified by the two hexadecimal digits XX \xXX Backslash (\u005C) \\ Apostrophe or single quote (u\0027) \’ Double quote (u\0022) \” Carriage return (u\000D) \r Form feed (\u000C) \f Vertical tab (\u000B) \v Newline (\u000A) \n Horizontal tab (\u0009) \t Backspace (\u0008) \b The NUL character (\u0000) \0 Character represented Sequence
  • 13. Adding Strings You can also add (or concatenate) strings simply by adding them. Example: var anotherString = ‘new’; var newVariable = ‘Something ‘ + anotherString; When adding numbers they will automatically be converting to strings. Example: var x = 12; var newString = x + ‘ dozen eggs’;
  • 14. Converting Strings To Numbers Utilize the parse Number utility functions to extract numbers from strings. parseInt parseFloat Example: var x = “11”; var xNum = parseInt(x);
  • 15. Booleans true (Other truthy values) 1 {} ‘ ‘ - space ‘ my String’ false (Other falsey values) undefined null 0 “” – empty string
  • 16. Equals vs Strictly Equals There is a strictly equals operator in JavaScript which will also check type as well as value. To show how this relates to boolean values: == Equals Works for Truthy values === Strictly Equals Works for truth only != Not Equals Works for Falsey values !== Strictly Not Equals Works for false only
  • 17. Objects JavaScript Objects are similar to ColdFusion Structures. They consist of zero to many key-value pairs. They can be nested infinitely deep. They provide an associative array or hash map. Example: // using the Object constructor var newObj = new Object(); newObj.x = 10; newObj.y = 20; // OR using the Object literal syntax var newObj = {x: 10, y: 20};
  • 18. Object Literal Object literal is the preferred way to create objects because it is concise and consistent with JSON-syntax. When utilizing object literal syntax key value pairs are separated by colon’s. Keys are called properties
  • 19. Functions Functions are actually a datatype too Example: var myFn = function() {console.log(‘hi’);}; function myFn() {console.log(‘hi’);} These are 2 different ways of defining a similar function. There is also a Function constructor, however it’s use is limited because it can only create functions in the global scope.
  • 20. Functions as Properties Properties of Objects can be any data type including Functions. Example: var myObject = {myFun: function() {console.log(‘hi’);}}; myObject.myFun();
  • 21. Arrays Arrays can be defined using 2 syntaxes as well. Example: // Utilizing the Array constructor var myArray = new Array(); myArray[0] = 12; myArray[1] = 232; // OR using the Array literal syntax. var myArray = [12,232];
  • 22. Arrays (cont.) Arrays can be infinitely nested Arrays can be sparse Arrays can store unlike datatypes Full reference available p 602-611 Arrays provide a number of useful properties and methods such as: length – property which defines how many elements are in the Array push – method which pushes another element on the Array when utilized as a Stack pop – method which pops an element off an Array when utilized as a Stack
  • 23. null vs undefined null “ null is a special keyword which indicates no value” undefined “ undefined is returned when you use either a variable that has not been declared but never had a value assigned to it or an object property that does not exist”
  • 24. null vs undefined Both of these equate to a falsey value. var myVar; // what is the value of myVar?