JavaScript高级程序设计阅读笔记(六) ECMAScript中的运算符(二)_javascript技巧
2.9.5、加性运算符
加性运算符(即加号和减号)通常是最简单的运算符,不过在ECMAScript中,每个加性运算符都有大量的特殊行为。
1、加法运算符:
var iResult=1+2;
console.log(iResult);//outputs 3
特殊性:
某个运算数是NaN,结果为NaN
Infinity加Infinity,结果为Infinity
-Infinity加-Infinity,结果为-Infinity
Infinity加-Infinity,结果为NaN
如果两个运算数都是字符串,把第二个字符串连接到第一个字符串上
如果只有一个运算数是字符串,把另一个运算数转换为字符串,结果是两个字符串连接成的字符串
示例:
var iResult2=NaN+1;
console.log(iResult2);//NaN
var iResult3=Infinity+Infinity;
console.log(iResult3);//Infinity
var iResult4=-Infinity-Infinity;
console.log(iResult4);//-Infinity
var iResult5="abc"+"bcd";
console.log(iResult5);//abcbcd
var iResult6=5+"5";
console.log(iResult6);//55
2、减法运算符:
var iResult=2-1;
console.log(iResult);//1
特殊性:
某个运算数是NaN,结果为NaN
Infinity减Infinity,结果为NaN
-Infinity减-Infinity,结果为NaN
Infinity减-Infinity,结果为Infinity
-Infinity减-Infinity,结果为-Infinity
如果两个运算数都是字符串,结果为NaN
如果只有一个运算数是字符串,把字符串转换为数字再进行运算
示例:
var iResult2=NaN-1;
console.log(iResult2);//NaN
var iResult3=Infinity-Infinity;
console.log(iResult3);//NaN
var iResult4=-Infinity-(-Infinity);
console.log(iResult4);//NaN
var iResult5=-Infinity-Infinity;
console.log(iResult5);//-Infinity
var iResult6=Infinity-(-Infinity);
console.log(iResult6);//Infinity
var iResult7="abc"-"a";
console.log(iResult7);//NaN
var iResult8="5"-5;
console.log(iResult8);//0
var iResult9="a"-5;
console.log(iResult9);//NaN
2.9.6、关系运算符
关系运算符、=执行的是两个数字的比较运算,返回的是一个Boolean值。如果两个操作数都是字符串,则逐一比较两个字符串的ASC码,如果只有一方是字符串,则把字符串转换为数字后比较,示例如下:
var bResult=2console.log(bResult);//false
var bResult="B"console.log(bResult);//true
var bResult="b"console.log(bResult);//false
var bResult="13"console.log(bResult);//true
var bResult=13console.log(bResult);//false
var bResult=-1console.log(bResult);//false
第17行的代码中,"a"被转换为数字时返回的是NaN,任何包含NaN的关系运算都要返回false。
2.9.7、等性运算符
1、等号和非等号
在ECMAScript中,等号(==)及非等号(!=)都返回Boolean值。为确定两个运算数是否相等,这两个运算数都会进行类型转换,转换规则如下:
如果一个运算数是Boolean值,在检查相等性之前,把它转换成数字值。false转换成0,true转换成1。
如果一个运算数是字符串,另一个运算数是数字,在检查相等性之前,要尝试把字符串转换成数字。
如果一个运算数是对象,另一个是字符串,在检查相等性之前,要尝试把对象转换成字符串。
如果一个运算数是对象,另一个是数字,在检查相等性之前,要尝试把对象转换成数字。
在进行比较时,运算符还遵循还列规则:
值null和undefined相等
在检查相等性时,不能把null和undefined转换成其他值。
如果某个运算数是NaN,等号将返回false,非等号将返回true。重要提示:即使两个运算数都是NaN,等号仍返回false,因为根据规则,NaN不等于NaN。
如果两个运算数都是对象,那么比较的是它们的引用值。如果两个运算数把向同一个对象,那么等号返回true,否则两个运算数不等。
示例:
console.log(null==undefined);//true
console.log("NaN"==NaN);//false
console.log(5==NaN);//false
console.log(NaN==NaN);//false
console.log(NaN!=NaN);//true
console.log(false==0);//true
console.log(true==1);//true
console.log(true==2);//false
console.log(undefined==0);//false
console.log(null==0);//false
console.log("5"==5);//true
2、全等号和非全等号
等号和非等号的同类运算符是全等号和非全等号。这两个运算符所做的与等号和非等号相同,只是它们在检查相等性前,不执行类型转换。全等号由三个等号(===)表示,非全等号由感叹号加两个等号(!==)表示,只有在无需类型转换运算数就相等的情况下,才返回true。例如:
console.log("55"==55);//true
console.log("55"===55);//false
console.log("55"!=55);//false
console.log("55"!==55);//true
2.9.8、条件运算符
条件运算符跟其他语言中的相同:varialbe=boolean_expression?true_value:false_value;
示例:
function Max(iNum1,iNum2){
return iNum1>=iNum2?iNum1:iNum2;
}
console.log(Max(1,3));//3
console.log(Max(3,1));//3
2.9.9、赋值运算符
简单的赋值运算符由等号(=)实现,只是把等号右边的值赋予等号左边的变量,例如:
var iNum=10;
复合赋值运算是由乘性运算符、加性运算符或位移运算符加等号(=)实现的。这些赋值运算符是下列这些常见情况的缩写形式:
var iNum=10;
iNum=iNum+10;
//等同于
var iNum=10;
iNum+=10;
每种主要的算术运算及其他几个运算都有复合赋值运算符:
乘法/赋值(*=)
除法/赋值(/=)
取模/赋值(%=)
加法/赋值(+=)
减法/赋值(-=)
左移/赋值(有符号右移/赋值(>>=)
无符号右移/赋值(>>>=)
2.9.10、逗号运算符
用逗号运算符可以在一条语句中执行多个运算。例如:
var iNum=1,iNum2=2,iNum3=3;
逗号运算符最常用于变量声明中。

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen











In der C-Sprache gibt es keinen Root-Operator. Zum Öffnen des Roots wird die Syntax „sqrt(value x)“ verwendet. besteht darin, die Quadratwurzeloperation für 4 durchzuführen. Das Ergebnis ist 2. sqrt() ist eine integrierte Root-Operationsfunktion in der C-Sprache. Ihr Operationsergebnis ist die arithmetische Quadratwurzel der Funktionsvariablen. Diese Funktion kann weder negative Werte verarbeiten noch imaginäre Ergebnisse ausgeben.

Für Golang-Entwickler ist „invaliduseof...operator“ ein häufiger Fehler. Dieser Fehler tritt normalerweise auf, wenn Parameterfunktionen variabler Länge verwendet werden. Es wird zur Kompilierungszeit erkannt und zeigt an, bei welchen Teilen Probleme auftreten. In diesem Artikel erfahren Sie, wie Sie diesen Fehler beheben können. 1. Was ist eine Parameterfunktion variabler Länge? Eine Parameterfunktion variabler Länge wird in der Golang-Sprache auch als Funktion variabler Parameter bezeichnet. Mithilfe von Parameterfunktionen variabler Länge können Sie mehrere Funktionen wie folgt definieren:

In PHP ist das Symbol „==“ ein Vergleichsoperator, der vergleichen kann, ob zwei Operanden gleich sind. Die Syntax lautet „Operand 1 == Operand 2“. Der „==“-Operator vergleicht und testet, ob die Variable links (Ausdruck oder Konstante) den gleichen Wert hat wie die Variable rechts (Ausdruck oder Konstante); er vergleicht nur die Werte der Variablen, nicht die Daten Typen. Wenn die beiden Werte gleich sind, wird ein wahrer Wert zurückgegeben. Wenn die beiden Werte nicht gleich sind, wird ein falscher Wert zurückgegeben.

In Java bedeutet „%“ Rest. Es handelt sich um einen binären arithmetischen Operator, der Divisionsoperationen durchführen und den Rest ermitteln kann. Der Operand des Restoperators „%“ ist normalerweise eine positive ganze Zahl oder eine negative Zahl oder sogar eine Gleitkommazahl. Wenn eine negative Zahl an dieser Operation beteiligt ist, hängt das Ergebnis davon ab, ob die vorherige Zahl positiv oder negativ ist.

Der Operator += wird verwendet, um den Wert des linken Operanden zum Wert des rechten Operanden zu addieren und das Ergebnis dem linken Operanden zuzuweisen. Er ist für numerische Typen geeignet und der linke Operand muss beschreibbar sein.

es2017 ist es8. Der vollständige Name von es ist „ECMAScript“, eine universelle Skriptsprache, die gemäß dem ECMA-262-Standard implementiert wurde. Die im Juni 2017 offiziell veröffentlichte Version heißt offiziell ECMAScript2017 (ES2017). kann als es8 bezeichnet werden.

Python wird aufgrund seiner einfachen und leicht lesbaren Syntax in einer Vielzahl von Bereichen häufig verwendet. Es ist von entscheidender Bedeutung, die Grundstruktur der Python-Syntax zu beherrschen, um sowohl die Programmiereffizienz zu verbessern als auch ein tiefes Verständnis für die Funktionsweise des Codes zu erlangen. Zu diesem Zweck bietet dieser Artikel eine umfassende Mindmap, die verschiedene Aspekte der Python-Syntax detailliert beschreibt. Variablen und Datentypen Variablen sind Container, die zum Speichern von Daten in Python verwendet werden. Die Mindmap zeigt gängige Python-Datentypen, einschließlich Ganzzahlen, Gleitkommazahlen, Zeichenfolgen, boolesche Werte und Listen. Jeder Datentyp hat seine eigenen Eigenschaften und Betriebsmethoden. Operatoren Operatoren werden verwendet, um verschiedene Operationen an Datentypen auszuführen. Die Mindmap deckt die verschiedenen Operatortypen in Python ab, z. B. arithmetische Operatoren und Verhältnisse

In PHP können Sie die Operatoren „%“ und „==" verwenden, um festzustellen, ob zwei Zahlen teilbar sind. Sie müssen nur den Operator „%" verwenden, um die beiden Zahlen zu dividieren, um den Rest zu erhalten, und dann den Operator „=“ verwenden ="-Operator Beurteilen Sie einfach, ob der erhaltene Rest 0 ist. Die Syntax lautet „Zahl 1 % Zahl 2 == 0“. Wenn er 0 ist, kann er teilbar sein. Wenn er nicht 0 ist, kann er nicht teilbar sein.
