欧博abg'javascript' tag wiki

For questions about programming in ECMAScript (JavaScript/JS) and its different dialects/implementations (except for ActionScript). Note that JavaScript is NOT Java. Include all tags that are relevant to your question: e.g., [node.js], [jQuery], [JSON], [ReactJS], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

(a dialect of ECMAScript) is a high-level, multi-paradigm, object-oriented, prototype-based, dynamically-typed, and interpreted language traditionally used for client-side scripting in web browsers. JavaScript can also be run outside the browser using a framework like Node.js, Nashorn, Wakanda, or Google Apps Script. Despite the name, it is unrelated to the Java programming language and shares only superficial similarities.

When asking a JavaScript question, you should:

Debug your JavaScript code (see , MDN, , & MSDN).

Isolate the problematic code and reproduce it in a . You may use an external site such as JSFiddle, JS Bin, or Codeply, but you must also include your code in the question itself.

If you are using a library or framework and it is relevant to your problem, tag the question appropriately: for jQuery, for Vue, for React, etc.

If the issue is client-side, attempt to reproduce it on other browsers. Mention in the question which browser the code is having problems on, and what error messages, if any, were found in the browser's console. Use the Developer Tools for your browser (see "Useful Tools" below) to see these messages. If the question is browser-specific, use tags , , , , , , etc.

Only tag the question as or if you are asking about an issue that concerns the combination of one of those with JavaScript and could only be answered with information specifically regarding either of those subjects.

Note: Unless a tag for a framework or library is also included, a pure JavaScript answer is expected for questions with the tag.

About JavaScript

JavaScript runs on every modern operating system, and an engine is included in all mainstream web browsers. Developed in 1995 by Brendan Eich at Netscape Communications, it was originally called LiveScript but was renamed to JavaScript due to the popularity of Sun Microsystems's Java language at the time.

JavaScript engines or implementations include:

The Mozilla Developer Network contains high-quality .

Client-side JavaScript is typically used to manipulate the Document Object Model (DOM) and Cascading Style Sheets (CSS) within the browser. This allows user interface scripting, animation, automation, client-side validation and more.

With the recent emergence of platforms such as Node.js, JavaScript can now be used to write server-side applications. In addition, it is also used in environments that aren't web-based, like PDF documents, site-specific browsers, desktop widgets, etc.

Nomenclature

Although it was developed under the name Mocha, the language was officially called LiveScript when it first shipped in beta releases of Netscape Navigator 2.0 in September 1995, but it was renamed JavaScript when it was deployed in the Netscape browser version 2.0B3.

The name change from LiveScript to JavaScript roughly coincided with Netscape adding support for Java technology in its Netscape Navigator web browser. The final choice of name caused confusion, giving the impression that the language was a spin-off of the Java programming language, and the choice has been characterized as a marketing ploy by Netscape to give JavaScript prestige by connection (if in name only) with what was then the hot, new web-programming language.

People often use the term JavaScript informally. The language and the term originated from Netscape. ECMAScript, JavaScript, and JScript are terms that are easy to confuse.

ECMAScript was developed as a standardization of Netscape's and Microsoft's independently-developed JScript. The canonical reference is the ECMAScript® 2015 Language Specification. While JavaScript and JScript aim to be compatible with ECMAScript, they also provide additional features (and other deviations) not described in the ECMA specifications. of ECMAScript also exist.

The differences today for those who use JavaScript are negligible; people generally do not distinguish the JavaScript and JScript variations from ECMAScript.

ECMAScript versions

All modern browsers with JavaScript support implement the ECMAScript 6 specification.

The current version of ECMAScript is ECMAScript 12, properly known as ECMAScript 2021, which was published in June 2021. Most modern browsers provide full support for this standard. You can see the current browser support of ES12 features at Can I Use?

Example JavaScript code

This script displays "Hello World" in a browser, once the website it is contained in finished loading.

window.onload = function() { alert('Hello World!'); };

Demo!

Learning JavaScript Interactive JavaScript learning Free JavaScript Programming Books Videos Security

JavaScript and the DOM provide the potential for entities with malicious intent to deliver scripts that run on a client computer via the Web. Developers of browsers contain this risk using two restrictions. First, scripts run in a sandbox where they can only perform web-related actions, not general-purpose programming tasks such as creating files. Second, scripts are constrained by the same-origin policy: scripts from one website do not have access to information such as usernames, passwords, or cookies sent to another site. Most JavaScript-related security bugs are breaches of either the same-origin policy or the sandbox.

Content Security Policy is the primarily intended method of ensuring that only trusted code is executed on a webpage.

Cross-site scripting (XSS) attacks are attempts to steal data or harm a website via JavaScript.

Useful Tools

Ways to provide live demos

Error detection and best practice testing

Code formatting

Code Minification

Performance Benchmarking Playground

Wisdom from Stack Overflow Useful links Frequently Asked Questions

Find some answers to some of the more frequently asked questions about JavaScript and related technology below.

Q: I have this JSON structure. How can I access property x.y.z? A: How can I access and process nested objects, arrays, or JSON?

Q: I'm adding events in a for loop, but all handlers do the same thing. Why? A:

Q: I want to compare something against multiple values. Is there an easy way to do it? A: Concise way to compare against multiple values

Q: How to set up proper inheritance? A: Objects don't inherit prototyped functions

Q: How do JavaScript closures work? A:

Q: Why does setTimeout() inside a for loop always use the latest value? A: setTimeout in for-loop does not print consecutive values

Q: How to return the response from an AJAX call from a function? A: How do I return the response from an asynchronous call?

Q: Why don't my handlers hooked up in a loop work correctly, and what can I do about it? A:

Q: How can I get query string values? A: How can I get query string values in JavaScript?

Q: What does use strict do in JavaScript? A:

Q: How can I make a redirect page in jQuery/JavaScript? A:

Q: How to sort an array of objects by a property value? A:

Q: From an array of objects, how do I extract the value of a property as an array? A: From an array of objects, extract value of a property as array

Q: I'm adding elements with JavaScript or jQuery at a later point and adding events, but they're not firing. Why? A: You might want event delegation.

Q: How can I only keep items of an array that match a specific condition? A: How can I only keep items of an array that match a certain condition?

Q: How can I debug my JavaScript code? A:

Q: What does this symbol mean in JavaScript? A:

More information Chat Room

2025-07-27 05:25 点击量:2