Search
Relevant Links
Top 10 Articles
Faster Windows 7 - How To Make Windows 7 Faster Easily And Quickly
Does your windows 7 run too slow?
Faster Windows 7 - How To Make Windows 7 Faster Easily And Quickly
Windows 7 Slow? Speed Up Slowing Windows 7 With These Tips
Windows 7 Slow? Speed Up Slowing Windows 7 With These Tips
Windows 7 Slow? Speed Up Slowing Windows 7 With These Tips
Different Types Of Computer Memory
Different Types of Computer Memory
Different Types Of Computer Memory
Successful Blogging Tips To Make Money Online
Successful Blogging Tips to Make Money Online
Successful Blogging Tips To Make Money Online
Computer Hardware - Learn How To Fix Your Computer
Computer hardware has changed a lot over the past 15 years and most computers used to be large and heavy and were very difficult to use because they did not have an operating system
Computer Hardware - Learn How To Fix Your Computer
Discount Computer Accessories
An accessory is an additional item for a product that helps in contributing to its utility
Discount Computer Accessories
Understand Viruses
Every computer user should be at least aware, if not conscious, of the now prevalent computer viruses
Understand Viruses
Evaluation Microsoft Windows 7
After the rather lackluster launch of Windows Vista, Microsoft is ready with another operating system that could succeed Windows XP in the true sense.
Evaluation Microsoft Windows 7
Satellite Tv On PC & Mobile Tv Pro
Instantly Turn your Computer into a Super TV. Does it really work?
Satellite Tv On PC & Mobile Tv Pro
Computer Firewalls
A firewall is a computer software that provides protection from hacking attempts from the Internet
Computer Firewalls
Categories
Related Links

 

ComputerInfoWeb.com

ComputerInfoWeb.com offers tips on computers, notebooks, repairs, Shopping, Software, Security, Computer Rental , Computer Shopping, Computer Programming, Computer Networking, Maintenance, Hardware, Internet, Game, Electronics and more.

Computer Programming

Computer Programming : Javascript

 

JavaScript is the name of Netscape Communications Corporation's implementation of the ECMAScript standard, a scripting language based on the concept of prototype-based programming. The language is best known for its use in websites (as client-side JavaScript), but is also used to enable scripting access to objects embedded in other applications.

Despite the name, JavaScript is only distantly related to the Java programming language, the main similarity being their common debt to the C syntax. Semantically, JavaScript has far more in common with the Self programming language.

JavaScript is a registered trademark of Sun Microsystems, Inc. It was used under license for technology invented and implemented by Netscape Communications and current entities such as the Mozilla Foundation.[1]
Contents
[hide]

* 1 History
* 2 Usage
* 3 Syntax
* 4 Debugging
* 5 Security
* 6 Related languages
* 7 References
* 8 See also
* 9 External links

[edit] History

JavaScript was originally developed by Brendan Eich of Netscape under the name Mocha, then LiveScript, and finally renamed to JavaScript. The change of name from LiveScript to JavaScript roughly coincided with Netscape adding support for Java technology in its Netscape Navigator web browser. JavaScript was first introduced and deployed in the Netscape browser version 2.0B3 in December of 1995. When web developers talk about using JavaScript in Internet Explorer, they are actually using JScript. The choice of name proved to be a source of much confusion.

As of 2006, the latest version of the language is JavaScript 1.7. The previous version 1.6 corresponded to ECMA-262 Edition 3 like JavaScript 1.5, except for Array extras, and Array and String generics. ECMAScript, in simple terms, is a standardized version of JavaScript. The ECMA-357 standard specifies E4X, a language extension dealing with XML.

[edit] Usage
Some JavaScript source-code, as seen within the text editor SciTE.
Enlarge
Some JavaScript source-code, as seen within the text editor SciTE.

JavaScript is a prototype-based scripting language with a syntax loosely based on C. Like C, the language has no input or output constructs of its own. Where C relies on standard I/O libraries, a JavaScript engine relies on a host environment into which it is embedded. There are many such host environment applications, of which web technologies are the best-known examples. These are examined first.

One major use of web-based JavaScript is to write functions that are embedded in or included from HTML pages and interact with the Document Object Model (DOM) of the page to perform tasks not possible in HTML alone. Some common examples of this usage follow.

* Opening or popping up a new window with programmatic control over the size, position and 'look' of the new window (i.e. whether or not the menus, toolbars etc are visible): If this degree of control is not required, JavaScript is not necessary. Simply adding the attribute target="xxx" to the link element in HTML will reliably produce a new window the same size as the current one, with menus etc displayed as per the user's preferences. Note that many browsers now include mechanisms that, by default, block all JavaScript pop-ups, displaying only a small message to say that they have done so.
* Checking or validating web form input values to make sure that they will be accepted before they are submitted to the server: There is always a time delay, and a processing overhead on the server, when a form has to be submitted. Nonetheless input validation should be repeated at the server in case the JavaScript failed to run (see below).
* Changing images as the mouse cursor moves over them: This effect is still employed by many designers, often to draw the user's attention to important links displayed as graphical elements. This "rollover" effect can also be implemented with CSS in recent browsers. Non-resizing graphics are not helpful to visually impaired users, and current browsers do not support clean interpolation of resized bitmaps; consequently, some designers are moving away from this approach.

The DOM interfaces in various browsers differ and don't always match the W3C DOM standards. Rather than write different variants of a JavaScript function for each of the many browsers in common use today, it is usually possible, by carefully following the W3C DOM Level 1 or 2 standards, to provide the required functionality in a standards-compliant way that most browsers will execute correctly. Care must always be taken to ensure that the web page degrades gracefully and so is still usable by any user who:

* has JavaScript execution disabled - for example as a security precaution
* has a browser that does not understand the JavaScript - for example on a PDA or mobile phone
* is visually or otherwise disabled and may be using an unusual browser, a speech browser or may have selected extreme text magnification. For more information on this, see the Web Accessibility Initiative

Other examples of JavaScript interacting with a web page's DOM have been called DHTML and SPA.

A different example of the use of JavaScript in web pages is to make calls to web and web-service servers after the page has loaded, depending upon user actions. These calls can obtain new information, which further JavaScript can merge with the existing page's DOM so that it is displayed. This is the basis of Ajax programming.

Outside of the Web, JavaScript interpreters are embedded in a number of tools. Adobe Acrobat and Adobe Reader support JavaScript in PDF files. The Mozilla platform, which underlies several common web browsers, uses JavaScript to implement the user interface and transaction logic of its various products. JavaScript interpreters are also embedded in proprietary applications that lack scriptable interfaces. Dashboard Widgets in Apple's Mac OS X v10.4 are implemented using JavaScript. Microsoft's Active Scripting technology supports JavaScript-compatible JScript as an operating system scripting language. JScript .NET is a CLI-compliant language that is similar to JScript, but has further object oriented programming features. Tools in the Adobe Creative Suite, including Photoshop, allow scripting through JavaScript.

Each of these applications provides its own object model which provides access to the host environment, with the core JavaScript language remaining mostly the same in each application.

[edit] Syntax

Main article: JavaScript syntax

[edit] Debugging

JavaScript debugging has some specifics in comparison with stand-alone applications. JavaScript programs usually rely on interaction with the loaded page's Document Object Model (DOM) so errors may be caused by wrong DOM usage in a technically correct script. This makes JavaScript errors difficult to find. However nowadays both Internet Explorer and the Gecko-based browsers come with a reasonably good JavaScript debugger. Gecko browsers use the Venkman debugger or the FireBug debugger for Mozilla Firefox, while for Internet Explorer there is the Microsoft Script Debugger. Microsoft also provides Microsoft Script Editor (MSE) as part of their Microsoft Office package (Microsoft Office 2002 or higher). There are also some free online checking tools such as JSLint.

Since JavaScript is interpreted, loosely-typed, and must run at the client-side in varying environments (host applications), implementations and versions the programmer has to take extra care to make sure the code executes as expected in as wide a range of circumstances as possible, and that functionality degrades nicely when it does not.

Each script block is parsed separately. On pages where JavaScript in script blocks is mixed with HTML, syntax errors can be identified more readily by keeping discrete functions in separate script blocks, or (for preference), using many small linked .js files. This way, a syntax error will not cause parsing/compiling to fail for the whole page, which can help to enable a dignified death.

[edit] Security

As JavaScript is a rich interpreted language running arbitrary server-provided code on a client computer, it has suffered its fair share of security issues. Many attempts at bypassing logical barriers to steal confidential information make use of JavaScript to perform their deeds behind the scenes, using techniques such as cross-site scripting (XSS). Non-expert users usually can't notice what is going on because the malicious code has no visible effect on their browsing experience. Besides, it is not obvious to people who are not programmers that their Web browser includes a full-blown programming language interpreter, with the power and risks implied.

Java has similar security issues but these are considered less serious because the Java virtual machine provides a well-defined sandboxing model and few Web sites today (as of 2006) require Java, whereas many use JavaScript.

[edit] Related languages

There is no real relationship between Java and JavaScript; their similarities are mostly in basic syntax because both are ultimately derived from C. Their semantics are quite different and their object models are unrelated and largely incompatible. Like C and C++, all Java variables and members are statically typed, whereas all JavaScript variables (as well as object properties and array elements) may hold a value of any type. Still, in addition to the name similarity, it is interesting to note that in Java 6, a script interface API was added, and that the first supported language is JavaScript (see http://java.sun.com/javase/6/webnotes/index.html#scripting for more information).

To avoid trademark issues, Microsoft named its implementation of the language JScript. JScript was first supported in Internet Explorer version 3.0, released in August 1996.

The standardization effort for JavaScript also needed to avoid trademark issues, so the ECMA 262 standard calls the language ECMAScript (see external links below), three editions of which have been published since the work started in November 1996. The object model of browser-based JavaScript, the Document Object Model (DOM), is not part of the ECMAScript standard. It is defined in a set of separate standards developed by the W3C, and is applicable to the access and manipulation of HTML and XML documents in many computer languages and platforms.

Microsoft's own VBScript, like JavaScript, can be run client-side in web pages. VBScript has syntax derived from Visual Basic and will only run if the web pages are viewed in Internet Explorer.

ActionScript, the programming language used in Macromedia Flash, is another implmentation of the ECMAScript standard.

JSON, or JavaScript Object Notation, is a general-purpose data interchange format that is defined as a subset of JavaScript.

JavaScript OSA (JavaScript for OSA, or JSOSA), is a Macintosh scripting language based on the Mozilla 1.5 JavaScript implementation, SpiderMonkey. It is a freeware component made available by Late Night Software. Interaction with the operating system and with third-party applications is scripted via a MacOS object. Otherwise, the language is virtually identical to the core Mozilla implementation. It was offered as an alternative to the more commonly used AppleScript language.

ECMAScript was included in the VRML97 standard for scripting nodes of VRML scene description files.

JavaScript is also considered a functional programming language like Scheme and OCaml because it has closures and supports higher-order functions.[2] It also has much in common with Python.


Other Relevant Articles from this Category:
Javascript
CPlusPlus Multi-threading And Thread Synchronization On Win32
Private Vs Protected OOP
Visual Basic.NET
Visual Basic
PHP
Java

More Categories:
Notebook Computer  
Computer Training  
Desktop Computer  
Computer Sale  
Computer Software  
Computer Repair  
Computer Store  
Computer Game  
Computer Hardware  
Computer Electronics  
Computer Security  
Computer Programming  
Computer Memory  
Computer Science  
Used Computer  
Computer Networking  
Computer Rental  
Computer Accessory  
Computer Algorithm  
Computer Shopping  
Computer Maintenance  
Computer Internet  
Outsourcing  
Windows 7