Home >Web Front-end >JS Tutorial >JavaScript basic grammar study notes_javascript skills
1. Definition
JavaScript is a scripting language (interpreted programming language) used to enhance the dynamic effect of the page and achieve real-time, dynamic interaction between the page and the user. JavaScript consists of three parts: ECMA, DOM and BOM
[1] ECMAScript is defined by ECMA-262 and provides core language functions (ECMA is the European Computer Manufacturers Association)
[2] DOM document object model, which provides an interface for accessing and manipulating web content
[3] BOM Browser Object Model, an interface that provides methods for interacting with the browser
2. Introduction
There are two ways to introduce javascript: embedding js code in the page and introducing external files
[1] Embed within the page
<script> alert("My First JavaScript"); </script>
[2]Introducing external js files
[Note] The 3f1c4e4b6b16bbbd69b2ee476dc4f83a element with the src attribute should not contain additional js code between its 3f1c4e4b6b16bbbd69b2ee476dc4f83a tags. If embedded code is included, only the external script will be downloaded and executed. and ignore embedded code
<script src="myScript.js"></script>
3f1c4e4b6b16bbbd69b2ee476dc4f83a
No matter which import method, you need to use the 3f1c4e4b6b16bbbd69b2ee476dc4f83a tag. The 3f1c4e4b6b16bbbd69b2ee476dc4f83a tag shares 6 attributes, among which the language attribute has been abandoned
[1]src: Represents an external file containing code to be executed, which can cross domains
[2] charset: Optional, indicating the character set of the code specified through the src attribute. Most browsers will ignore
[3] defer: optional, indicating that the script can be delayed until the document is completely parsed and displayed before execution, only valid for external scripts
[4] async: Optional, indicating that the script should be downloaded immediately, but does not hinder other operations on the page. Only valid for external scripts
[5]type: optional, is an alternative attribute of language, indicating the content type of the scripting language used to write the code, also known as the MIME type. Considering compatibility, it is generally text/javascript. If not specified, the default value is also text/javascript
[6]language: obsolete
async and defer
[1] If neither async nor defer is set, the browser will immediately load and execute the specified script
352b1442a1f39d4f49881b7e5087d9182cacc6d41bbb37262a98f745aa00fbf0
[2] If only async is set, the browser will download the script asynchronously without blocking other operations on the page
[Note] The asynchronous script must be executed before the load event of the page
80430e714222ca8f2749e04af6c962952cacc6d41bbb37262a98f745aa00fbf0
[3] If only defer is set, the script will be delayed until the document is completely parsed and displayed before execution
bdffe83d777e72fac9c98c818c0289f32cacc6d41bbb37262a98f745aa00fbf0
Notes
Comments can improve code readability and help you and others read and understand Javascript code. The content of comments will not be displayed on the web page and is divided into single-line comments and multi-line comments
//单行注释 /* 多行注释 */
Ignore spaces
JavaScript will ignore extra spaces. You can add spaces to the script to improve its readability
//以下写法均正确 var name="hello"; var name ="hello"; var name = "hello";
Code wrapping
You can use backslashes in text strings to wrap lines of code
//正确 document.write("Hello \ World!"); //错误 document.write \ ("Hello World!");
Case sensitive
JavaScript variable, function names and operators are case-sensitive. The function getElementById is different from getElementbyID. Similarly, the variables myVariable and MyVariable are also different
Reserved words and keywords
ECMA-262 describes a set of keywords with specific purposes. These keywords are used to indicate the beginning or end of a control statement, or to perform specific operations; ECMA-262 also describes another set of keywords. Reserved words that cannot be used as identifiers; they may become keywords in the future.
//第5版在非严格模式下的保留字 Class | enum | extends | super | const | export | import //第5版在严格模式下的保留字 Implements | package | public | interface | private | static | let* | protected | yield*