Home > Web Front-end > JS Tutorial > JavaScript Basics What I Forgot_Basic Knowledge

JavaScript Basics What I Forgot_Basic Knowledge

WBOY
Release: 2016-05-16 18:44:35
Original
853 people have browsed it

5 =5
x="5" "5";
x="5" 5 ;
document.write(x); (the results are all﹕55)

undefined It is the value of an uninitialized variable, has no reference value, and belongs to undefined
var anyway; anyway belongs to the defined and default empty value

unary operator: delete (delete objects and methods defined by developers) The reference of the original ECMAScript method cannot be deleted)
void operator returns undefined for any value

A function without a return value actually returns undefined.

Unary addition essentially has no effect on numbers.
The method of unary addition to calculate strings is similar to parseInt()
Difference: Only unary addition can convert strings in octal and hexadecimal forms (such as:OxB﹑010)

Unary subtraction calculates the string, converts the string into an approximate number, and then negates the value

ECMAScript integers have two types: signed integers and unsigned integers

0 represents Positive numbers, 1 represents negative numbers
Positive numbers are stored in true binary form
Negative numbers are also stored as binary codes, using two's complement.
Compute the two's complement of a number: absolute value inversion plus one

When dealing with signed integers, developers do not have access to 31 bits.

var iNum = -18;
alert(iNum.toString(2));
The output is "-10010", non-two's complement, in order to avoid accessing 31-bit

The numerical range of unsigned integers is 0 to 4294967295
After converting unsigned integers into strings, only their significant bits are returned.

Bit operation NOT (~), bit operation AND, bit operation OR (|), unsigned right shift operation (>>>)
Left shift operation ( The bitwise operation
Only ECMAScript’s bitwise operators can create unsigned integers.

var iNum1 = 25; //25 is equal to 000000000000000000000000011001
var iNum2 = ~iNum1; //Convert to 111111111111111111111111100110
alert(iN um2); //Output "-26"


Dealing with older browsers
/* */Multi-line comments
The logical NOT operator behaves as follows:
* Returns true if the operand is the number 0
* If the operand is any number other than 0, return false
* If the operand is null, return true
* If the operand is NaN, return true
* If the operand is undefined, an error occurs
!!sBlue, the first NOT operator returns a Boolean value. The second NOT will negate the Boolean value

The logical AND operation does not necessarily return a Boolean value:
* If one operand is an object and the other is a Boolean value, the object is returned.
* If both operands are objects, return the second object.
* If an operand is null, return null.
* If an operand is NaN, return NaN.

Similar to the logical AND operator, if an operand is not a Boolean value, the logical OR operation does not necessarily return a Boolean value:
* If one operand is an object and the other is a Boolean value, return the object.
* If both operands are objects, return the first object.
* If an operand is null, return null.
* If an operand is NaN, return NaN.

Multiplication operator (*)
* If the result is too large or too small, the generated result is Infinity or -Infinity.
* If an operand is NaN, the result is NaN.
* Infinity multiplied by 0, the result is NaN.
* Infinity multiplied by any number other than 0, the result is Infinity or -Infinity.
* Infinity times Infinity, the result is Infinity.

Division operator (/)
* If an operand is NaN, the result is NaN.
* Infinity is divided by Infinity, the result is NaN.
* Infinity divided by any number, the result is Infinity.
* Divide 0 by any non-infinity number, the result is NaN.
* Infinity divided by any number other than 0 results in Infinity or -Infinity.

Modulo operator (%)
* If the dividend is Infinity, or the divisor is 0, the result is NaN.
* Infinity is divided by Infinity, the result is NaN.
* If the divisor is an infinite number, the result is the dividend.
* If the dividend is 0, the result is 0.

var bResult = "25" Both operands are strings, so their character codes are compared. The character code of "2" is 50, and the character code of "3" is 50. The character code is 51
var bResult = "25" The string "25" will be converted to the number 25 and then compared with the number 3
Any relational operator containing NaN is required Return false ("a"
Equal and non-equal signs are used to process original values ​​(converted to numeric values ​​before execution), congruent and non-congruent signs The rules for performing type conversions when handling objects are as follows:
* If an operand is a Boolean value, convert it to a numeric value before checking for equality. false is converted to 0, true is 1 (true != 2)
* If one operand is a string and the other is a number, try to convert the string to a number before checking for equality.("5" == 5)
* If one operand is an object and the other is a string, try to convert the object to a string before checking for equality.
* If one operand is an object and the other is a number, try to convert the object to a number before checking for equality.
Follow the following rules:
* The values ​​null and undefined are equal.
* When checking for equality, null and undefined cannot be converted to other values. (undefined != 0,null != 0)
* If an operand is NaN, the equal sign will return false and the non-equal sign will return true. (NaN !=NaN)
* If both operands are objects, then their reference values ​​are compared. The equal sign returns true if both operands point to the same object, otherwise the two operands are not equal.

Congruent and non-congruent signs (no type conversion is performed)

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template