Kevin Reuter & Brian Guthrie.  Multi-paradigm  Prototype based objects  Dynamic, weak typing.

Slides:



Advertisements
Similar presentations
the javascript language BY SA.
Advertisements

Introducing JavaScript
1 COMM 1213 H1 COMP 4923 X1 JavaScript 1 (Readings: Ch. 10, 11 Knuckles)
Introduction to JavaScript
JavaScript William Hosbein L1k3 th3 c00l l00k1ng d3s1gn?
1 Owais Mohammad Haq Department of Computer Science Eastern Michigan University April, 2005 Java Script.
Working with JavaScript. 2 Objectives Introducing JavaScript Inserting JavaScript into a Web Page File Writing Output to the Web Page Working with Variables.
Javascript Client-side scripting. Up to now  We've seen a little about how to control  content with HTML  presentation with CSS  Javascript is a language.
Tutorial 10 Programming with JavaScript
HTML Recall that HTML is static in that it describes how a page is to be displayed, but it doesn’t provide for interaction or animation. A page created.
XP 1 Working with JavaScript Creating a Programmable Web Page for North Pole Novelties Tutorial 10.
XP Tutorial 1 New Perspectives on JavaScript, Comprehensive1 Introducing JavaScript Hiding Addresses from Spammers.
J avaScript J JP P resentation Jeff Watson Web & Internet Programming Group.
Taking JavaScript Seriously IS NOT THE WORST IDEA.
JavaScript JavaScript is a scripting language that is most commonly used to add client- side programming to a web page. Some of the things it is used for.
JavaScript, Fifth Edition Chapter 1 Introduction to JavaScript.
Introduction to JavaScript Kirkwood Continuing Education © Copyright 2014, Fred McClurg All Rights Reserved.
Programming with JavaScript (Chapter 10). XP Various things Midterm grades: Friday Winter Career Fair – Thursday, April 28, 2011 (11 am to 3 pm). – MAC.
Javascript Languages By Rapee kamoltalapisek ID:
JavaScript Tabriz university Its September 1995.
An Overview of ActionScript The Powerful Scripting Language of Macromedia Flash.
JavaScript By: Louis Roselli & Michael Reynolds. Problem Domain JavaScript is programming code that can be inserted into HTML pages. JavaScript inserted.
Client Scripting1 Internet Systems Design. Client Scripting2 n “A scripting language is a programming language that is used to manipulate, customize,
Javascript. Outline Introduction Fundamental of JavaScript Javascript events management DOM and Dynamic HTML (DHTML)
SE-2840 Dr. Mark L. Hornick 1 Modifying webpage behavior using client-side scripting Javascript.
Lesson13. JavaScript JavaScript is an interpreted language, designed to function within a web browser. It can also be used on the server.
Introduction to JavaScript Gordon Tian
CMPS 211 JavaScript Topic 1 JavaScript Syntax. 2Outline Goals and Objectives Goals and Objectives Chapter Headlines Chapter Headlines Introduction Introduction.
1 JavaScript in Context. Server-Side Programming.
XP Tutorial 10New Perspectives on Creating Web Pages with HTML, XHTML, and XML 1 Working with JavaScript Creating a Programmable Web Page for North Pole.
Tutorial 10 Programming with JavaScript. XP Objectives Learn the history of JavaScript Create a script element Understand basic JavaScript syntax Write.
An Introduction to JavaScript Summarized from Chapter 6 of “Web Programming: Building Internet Applications”, 3 rd Edition.
Introduction.  The scripting language most often used for client-side web development.  Influenced by many programming languages, easier for nonprogrammers.
JavaScript Justin Skinner Programming Languages. JavaScript JavaScript is not Java nor a subset But JavaScript does share the C-family syntax with Java.
Client-side processing in JavaScript.... JavaScript history Motivations –lack of “dynamic content” on web pages animations etc user-customised displays.
Javascript. What is JavaScript? Scripting (interpreted) language designed for the web Beware: JavaScript is case sensitive.
XP Tutorial 10New Perspectives on HTML and XHTML, Comprehensive 1 Working with JavaScript Creating a Programmable Web Page for North Pole Novelties Tutorial.
GeoGebra on mobile devices GeoGebraMobile, the JavaScript version of GeoGebra. Gabor Ancsin (this man =>)
JavaScript History and Versions JavaScript was introduced as part of the Netscape 2.0 browser Microsoft soon released its own version called JScript ECMA.
XP Tutorial 10 Section 1 1 Programming with JavaScript.
1 JavaScript in Context. Server-Side Programming.
“The world’s most misunderstood language has become the world’s most popular programming language” Akshay Arora
Introduction to JavaScript CSc 2320 Fall 2014 Disclaimer: All words, pictures are adopted from “Simple JavaScript”by Kevin Yank and Cameron Adams and also.
Tutorial 10 Programming with JavaScript. 2New Perspectives on HTML, XHTML, and XML, Comprehensive, 3rd Edition Objectives Learn the history of JavaScript.
Rich Internet Applications 2. Core JavaScript. The importance of JavaScript Many choices open to the developer for server-side Can choose server technology.
JavaScript & Introduction to AJAX
Javascript Intro Instructor: Shalen Malabon. Lesson Plan Core Javascript Syntax Types and Objects Functions DOM Event Handling Debugging Javascript Smarter.
Tutorial 10 Programming with JavaScript. 2New Perspectives on HTML, XHTML, and XML, Comprehensive, 3rd Edition Objectives Learn the history of JavaScript.
JavaScript Katie Fowle November 15, History Brendan Eich at Netscape, 1995 Need for interactivity in web pages Mocha, LiveWire, LiveScript, then.
JavaScript and AJAX 2nd Edition Tutorial 1 Programming with JavaScript.
XP Tutorial 10New Perspectives on HTML, XHTML, and DHTML, Comprehensive 1 Working with JavaScript Creating a Programmable Web Page for North Pole Novelties.
The Web Wizard’s Guide To DHTML and CSS Chapter 2 A Review of CSS2 and JavaScript.
Javascript Prof. Wenwen Li School of Geographical Sciences and Urban Planning 5644 Coor Hall
Programming for the Web JavaScript Basics Dónal Mulligan BSc MA
Build in Objects In JavaScript, almost "everything" is an object.
Scope, Objects, Strings, Numbers
Exploring JavaScript Ch 14
JavaScript an introduction.
Web Systems Development (CSC-215)
JAVASCRIPT Pam Kahl | COM 585 | Spring 2010.
CS5220 Advanced Topics in Web Programming JavaScript Basics
Tutorial 10 Programming with JavaScript
CS3220 Web and Internet Programming JavaScript Basics
JavaScript Overview By Kevin Harville.
JavaScript CS 4640 Programming Languages for Web Applications
Tutorial 10: Programming with javascript
Introduction To JavaScript
CS3220 Web and Internet Programming JavaScript Basics
JavaScript CS 4640 Programming Languages for Web Applications
Presentation transcript:

Kevin Reuter & Brian Guthrie

 Multi-paradigm  Prototype based objects  Dynamic, weak typing

1995  Originally developed for Netscape as 'Mocha' by Brendan Eich  Renamed to LiveScript when it was first included in Navigator  Renamed again to JavaScript  Final renaming coincided with Navigator adding support for Java - confusion ensued 1996  Microsoft includes JScript in IE 3  Netscape submits JS to ECMA for standards consideration  Standard adopted in 1997

 JavaScript  Jscript  Jscript.NET  ECMAScript  ActionScript  QtScript  Objective-J  WMLScript

 Primitive Datatypes  String: ‘single quote’ “and double quote”  Boolean: true, false  Number: 1, 2.0  Special Types  null  undefined  NaN  Infinity

 Pros  C-style syntax  Style is not subjective  Cons  Nested function  Dynamically typed variables  Minimal variable naming rules

 Pros  Semicolon insertion  Dynamically typed variables  Cons  Semicolon insertion  Style is not subjective

 Pros  Most browsers have built-in debugging consoles  Cons  Dynamically typed variables  Scripts are run in client browser  Easily exploitable (XSS, CSRF)  Inclusion in web pages can cause T2S and magnification features to fail

 Pros  Scripts are run in client browser  C-based syntax is commonly known  Cons  Many different variations  Every browser family has its own version  May have to write separate code for each  Prototype-base languages are uncommon  Based on Scheme

 Cons  Undefined variables are undefined not null  All numbers are IEEE-745 doubles  =  So !=.3  Strings can be single or double quoted  var greeting = "Hello, world!";  var greeting = 'Hello, world!';  Many vendor-specific variations  Semicolon insertion  with (…) {}  Seriously?" \t \r\n " == 0 == ‘0’ == false != ‘false’

 Serialization format based on JS object shorthand  Used as an alternative to XML

 Cross-site vulnerabilities  Insertion of malicious JavaScript into a site  Misplaced trust in client browser  No reliable way to hide code from clients  Scripts can be disabled so JS can't be used to prevent certain actions  Browser and plugin coding errors  Coding errors in plugins can allow for things like buffer- overflows  Sandbox implementation errors  Browser can unintentionally allow JS to run outside of a sandbox  Windows allows JS to be run as a non-sandboxed, general- purpose program

 The Internet - just turn off JS in your web browser and watch the web stop working.  Many other programming languages have libraries for manipulating JSON.

 "JS had to 'look like Java' only less so, be Java’s dumb kid brother or boy-hostage sidekick. Plus, I had to be done in ten days or something worse than JS would have happened" - Brendan Eich  “The problem with JavaScript isn’t just that it allows them (global variables), it requires them.” – Douglas Crockford  “All JavaScript implementations are broken. Some more broken than others [...]. They're all broken in different ways.” - Bob Ippolito

          