Operators of JavaScript study notes (continued)_Basic knowledge
1. Multiplicative operator
1. Multiplication: *
Some special rules for multiplication operators:
If the operands are both numerical values, they are calculated according to conventional multiplication. If the product exceeds the range of ECMAscript numerical representation, infinity or -infinity is returned
If one of the operands is NaN, the return result is NaN
If infinity is multiplied by 0, NaN
is returned.
If infinity is multiplied by a non-zero number, return infinity or -infinity
Multiply infinity by infinity and return infinity
If one of the operands is not a numeric value, the background will first call number() to convert it into a numeric value, and then apply the above rules
2. Division: /
Some special rules for division operators:
If the operands are all numerical values, they are calculated according to conventional division. If the quotient exceeds the range of ECMAscript numerical representation, infinity or -infinity is returned
If one of the operands is NaN, the return result is NaN
If infinity is divided by infinity, NaN
is returned.
If 0 is divided by 0, return NaN
If a non-zero finite number is divided by 0, return infinity or -infinity
If infinity is divided by a non-zero finite number, return infinity or -infinity
If one of the operands is not a numeric value, the background will first call number() to convert it into a numeric value, and then apply the above rules
Some special rules for the modulo operator:
If the operands are all numeric values, follow the regular division calculation and return the remainder
If the dividend is infinite and the divisor is a finite number, the return result is NaN
If the dividend is finite and the divisor is 0, NaN
is returned
If infinity is divided by infinity, NaN
is returned.
If the dividend is finite and the divisor is infinite, return the dividend
If the dividend is 0, return 0
If one of the operands is not a numeric value, the background will first call number() to convert it into a numeric value, and then apply the above rules
2. Additive operator
1. Addition operator:
If one of the operands is a string:
If both operands are strings, concatenate the second operand to the end of the first operand.
If only one operand is a string, convert the other operand into a string and then execute the above rules
2. Subtraction operator: -
If one of the operands is a string, Boolean value, null or undefined, number() is first called in the background to convert it into a numerical value, and then subtraction is performed.
3. Relational Operators
Greater than:>
Less than:
Greater than or equal to:>=
Less than or equal to:
Special rules for relational operators:
If the operand is a string, compare the corresponding character encodings of the two strings
If one of the operands is a numerical value, convert the other operand into a numerical value first, and then compare it
When comparing any number with NaN, the result is false
4. Equality operator
1. Equality and inequality: == and! =
Both operators will convert the operands to the same type before comparison
When converting, the equality and inequality operators follow the following rules:
If one of the operands is of type Boolean, then it is first converted to a numeric type, false is converted to 0, and true is converted to 1.
If one of the operands is a string and the other is a number, the string is converted to a number for comparison.
If one of the operands is an object and the other is not, the valueof() method of the operands is called first, and then the basic type value is obtained and then compared
Special rules when comparing:
null and undefined are equal.
null and undefined are not converted to any other type
If the result of either operation is NaN, then an equality comparison returns false and an inequality comparison returns true. Note that even if both operands are NaN, the return result is still false, that is, NaN is not equal to NaN.
If both operands are objects, then the values they refer to are compared, and if they refer to the same object, then return true, otherwise, return false.
2. Congruent and incongruent: == and ===
== will convert the operands into the same type for comparison;
=== will not convert types, direct comparison
For example:
var result1 = ("55" == 55);
var result2 = ("55" === 55);
alert(result1);//true
alert(result2); //false"55" is a string, 55 is a number, the types are different
5. Conditional operators
Variable = conditional expression? True value: False value
First the conditional expression is evaluated. If the result is true, the true value is assigned to the variable. If it is false, the false value is assigned to the variable.
6. Assignment operator
1. Simple assignment operator: =
var num1 = 10;
num=num1 10;
2. Compound assignment operators: =, -=, *=, /=, %=, >>=, >>=
7. Comma operator
The comma operator can perform multiple operations in one statementPurpose: 1. Declare multiple variables
var num1=1, num2=2, num3=3;
2. Assignment
When used in assignment operations, the comma operator always returns the value of the last expression.
If you want to know about your website, if you want to use javascript, you can create a new account.讲解javascript语句。

Node.js excels at efficient I/O, largely thanks to streams. Streams process data incrementally, avoiding memory overload—ideal for large files, network tasks, and real-time applications. Combining streams with TypeScript's type safety creates a powe

The differences in performance and efficiency between Python and JavaScript are mainly reflected in: 1) As an interpreted language, Python runs slowly but has high development efficiency and is suitable for rapid prototype development; 2) JavaScript is limited to single thread in the browser, but multi-threading and asynchronous I/O can be used to improve performance in Node.js, and both have advantages in actual projects.

JavaScript originated in 1995 and was created by Brandon Ike, and realized the language into C. 1.C language provides high performance and system-level programming capabilities for JavaScript. 2. JavaScript's memory management and performance optimization rely on C language. 3. The cross-platform feature of C language helps JavaScript run efficiently on different operating systems.

JavaScript runs in browsers and Node.js environments and relies on the JavaScript engine to parse and execute code. 1) Generate abstract syntax tree (AST) in the parsing stage; 2) convert AST into bytecode or machine code in the compilation stage; 3) execute the compiled code in the execution stage.

The future trends of Python and JavaScript include: 1. Python will consolidate its position in the fields of scientific computing and AI, 2. JavaScript will promote the development of web technology, 3. Cross-platform development will become a hot topic, and 4. Performance optimization will be the focus. Both will continue to expand application scenarios in their respective fields and make more breakthroughs in performance.

Both Python and JavaScript's choices in development environments are important. 1) Python's development environment includes PyCharm, JupyterNotebook and Anaconda, which are suitable for data science and rapid prototyping. 2) The development environment of JavaScript includes Node.js, VSCode and Webpack, which are suitable for front-end and back-end development. Choosing the right tools according to project needs can improve development efficiency and project success rate.

Yes, the engine core of JavaScript is written in C. 1) The C language provides efficient performance and underlying control, which is suitable for the development of JavaScript engine. 2) Taking the V8 engine as an example, its core is written in C, combining the efficiency and object-oriented characteristics of C. 3) The working principle of the JavaScript engine includes parsing, compiling and execution, and the C language plays a key role in these processes.

JavaScript is at the heart of modern websites because it enhances the interactivity and dynamicity of web pages. 1) It allows to change content without refreshing the page, 2) manipulate web pages through DOMAPI, 3) support complex interactive effects such as animation and drag-and-drop, 4) optimize performance and best practices to improve user experience.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 Linux new version
SublimeText3 Linux latest version

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

Dreamweaver CS6
Visual web development tools

Dreamweaver Mac version
Visual web development tools

WebStorm Mac version
Useful JavaScript development tools
