javascript算术运算符有:加法运算符“+”,减法运算符“-”、乘法运算符“*”、除法运算符“/”、求余运算符“%”、递增运算符“++”、递减运算符“--”、幂运算符“**”。
本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。
算术运算符用于对数字(文字或变量)执行算术运算。标准算术运算符是加法 +
,减法 -
,乘法 *
和除法 /
。和数学里面的加减乘除很类似,我们一起来看一下。
加法运算符
加法运算符 +
的作用是数值求和,这个应该很简单。
示例:
下面是简单的求两数之和:
var a = 8; var b = a + 5; console.log(b); // 13
+
激发运算符除了计算两数之和,我们可以通过 +
连接字符串,得到的结果是一个新的字符串。
示例:
使用 +
将定义好的三个变量连接:
str1 = "hello"; str2 = "xkd"; str3 = " "; console.log(str1 + str3 + str2); // 输出: hello xkd
除此之外,数字和一个字符串也可以通过 +
加号连接,返回结果同样为一个字符串。
示例:
看一下数字与数字相加,数字与字符串相加有什么不同:
num1 = 10; num2 = 15; str1 = "15" console.log(num1 + num2 ); // 输出: 25 console.log(num1 + str1 ); // 输出:1015
注意在某些编程语言(例如Python)中不同类型是不能进行相加的,例如数字加字符串会报错。而 JavaScript 中数字和字符串相加,返回一个字符串。
减法运算符
减法运算符 -
可以用于两个操作数相减,结果为它们的差值。
示例:
var c = 8; var d = c - 5; console.log(d); // 3
在减法运算中,如果操作数为字符串,先尝试把它转换为数值,再进行运算。如果有一个操作数不是数字,则返回 NaN。
示例:
console.log(2 - "1"); //返回1 console.log(2 - "a"); //返回NaN
使用值减去 0,可以快速把值转换为数字。例如 HTTP 请求中查询字符串一般都是字符串型数字,可以先把这些参数值减去 0 转换为数值。这与调用 parseFloat() 方法的结果相同,但减法更高效、快捷。减法运算符的隐性转换如果失败,则返回 NaN,这与使用 parseFloat() 方法执行转换时的返回值是不同的。
例如,对于字符串“100aaa”而言,parseFloat() 方法能够解析出前面几个数字,而对于减法运算符来说,则必须是完整的数字,才可以进行转换。
console.log(parseFloat("100aaa")); //返回100 console.log("100aaa" - 0); //返回NaN
对于布尔值来说,parseFloat() 方法能够把 true 转换为 1,把 false 转换为 0,而减法运算符视其为 NaN。
对于对象来说,parseFloat() 方法会尝试调用对象的 toString() 方法进行转换,而减法运算符先尝试调用对象的 valueOf() 方法进行转换,失败之后再调用 toString() 进行转换。
注意特殊操作数的减法运算。
var n = 5; //定义并初始化任意一个数值 console.log(NaN - n); //NaN与任意操作数相减,结果都是NaN console.log(Infinity - n); //Infinity与任意操作数相减,结果都是Infinity console.log(Infinity - Infinity); //Infinity与Infinity相减,结果是NaN console.log((-Infinity) - (-Infinity)); //负Infinity相减,结果是NaN console.log((-Infinity) - Infinity); //正负Infinity相减,结果是-Infinity
取反运算
注意特殊操作数的取反运算
console.log(- 5); //返回-5。正常数值取负数 console.log(- "5"); //返回-5。先转换字符串数字为数值类型 console.log(- "a"); //返回NaN。无法完全匹配运算,返回NaN console.log(- Infinity); //返回-Infinity console.log(- (- Infinity)); //返回Infinity console.log(- NaN); //返回NaN
乘法运算符
乘法运算符 *
的结果是操作数的乘积。
示例:
var e = (8 + 5) * 3; var f = 'xkd' * 3; console.log(e); // 输出:39 console.log(f); // 输出:NaN
如果我们使用一个字符串与一个数字相乘,最终返回一个NaN,即非法数。
除法运算符
除法运算符 /
的结果是操作数的商 ,左操作数是被除数,右操作数是除数。
示例:
var g = (9 - 3) / 3; var h = 3.0 / 1.0; var i = 1 / 2; console.log(g); //输出:2 console.log(h); //输出:3 console.log(i); //输出:0.5
我们需要注意的是,在 JavaScript 中 1 / 2
这种结果带小数点的运算,结果会带小数点,例如 0.5
。而在 Java 等语言中,不需要数字是明确的浮点数,1 / 2
的返回结果为0。
求余运算符
百分号 %
是求余运算符,返回第一个操作数对第二个操作数的模(余数),例如 x % y
,得到的结果是x
除以y
的整型余数。余数大家应该知道,我们在数学中也学过,就是指整数触发中被除数未被除尽的部分。
示例:
例如下面这段代码:
var m = 9; var n = 2; var mn = m % n; console.log(mn); //输出: 1
输出结果为1,这其实很好理解,9 % 2
就是求 9 除以 2 的余数,就是1。
那么如果是 12 % 5
呢,输出结果会是什么? 12除以5会余2,所以结果结果为2。现在你应该知道 %
要怎么使用了吧。
递增运算符
递增运算符 ++
为其操作数增加1,并返回一个数值。如果使用后置,如x++
,将会在递增前返回数值。如果前置,如 ++x
,将会在递增后返回数值。
示例:
假设我们定义了一个变量 i
,然后使用自增运算符对 i
进行递增运算,将递增后的 i
赋值给了变量 j
,最终j
的输出结果为 6:
var i = 5; i++; var j = i; console.log(j); // 6
那为什么结果会是6呢,i++
其实就是表示在 i
的基础上加一,相当于i + 1
。
然后我们看一下递增运算符前置和后置,到底有什么区别,例如下面这个代码:
var a = 9; console.log(a++); // 输出:9 console.log(a); // 输出:10 console.log(++a); // 输出:11
- 变量 a 的值为9,然后使用后置递增运算符
a++
,第一次输出会在递增之前就返回数值,即输出结果还是 9。 - 然后此时输出 a 的值,可以看到 a 的值已经为10了,因为已经执行了一次递增运算符,所以加 1。
- 接着第三次输出时,使用前置递增运算符,这会在递增之后才返回数值,即输出结果为11。
递减运算符
递减运算符 --
为其操作数减去1,并返回一个数值。递减运算符和递增运算符的使用方法差不多,一个是减、一个是加,正好相反。
如果后置使用递减运算符,则在递减之前返回数值。如果前置使用,则在递减之后返回数值。
示例:
var b = 7; console.log(b--); // 输出:7 console.log(b); // 输出:6 console.log(--b); // 输出:5
- 变量b的值为7,然后使用后置递减运算符
b--
,会在递减之钱返回数值,即7。 - 然后第二次输出变量b,此时已经成功执行
b--
,会在此基础上减1,所以输出6。 - 第三次输出
--b
,使用后置递减运算符,会在递减之后返回数值,所以会输出5。
幂运算符
幂运算符 **
返回第一个操作数做底数,第二个操作数做指数的乘方。例如5 ** 2
表示 5 的 2 次方,根据所学数学知道就能得出结果为25。
示例:
下面这个代码表示求 6 的 3 次方,相当于 6 * 6 * 6
,结果为216:
var x = 6; var y = x ** 3; console.log(y); // 216
上面的运算出的结果与 Math.pow(x, y)
是相同的,例如:
var x = 6; var y = Math.pow(x,3); console.log(y); // 216
pow()
方法可返回 x 的 y 次幂的值。
【推荐学习:javascript高级教程】
Atas ialah kandungan terperinci javascript算术运算符有哪些. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Penggunaan utama JavaScript dalam pembangunan web termasuk interaksi klien, pengesahan bentuk dan komunikasi tak segerak. 1) kemas kini kandungan dinamik dan interaksi pengguna melalui operasi DOM; 2) pengesahan pelanggan dijalankan sebelum pengguna mengemukakan data untuk meningkatkan pengalaman pengguna; 3) Komunikasi yang tidak bersesuaian dengan pelayan dicapai melalui teknologi Ajax.

Memahami bagaimana enjin JavaScript berfungsi secara dalaman adalah penting kepada pemaju kerana ia membantu menulis kod yang lebih cekap dan memahami kesesakan prestasi dan strategi pengoptimuman. 1) aliran kerja enjin termasuk tiga peringkat: parsing, penyusun dan pelaksanaan; 2) Semasa proses pelaksanaan, enjin akan melakukan pengoptimuman dinamik, seperti cache dalam talian dan kelas tersembunyi; 3) Amalan terbaik termasuk mengelakkan pembolehubah global, mengoptimumkan gelung, menggunakan const dan membiarkan, dan mengelakkan penggunaan penutupan yang berlebihan.

Python lebih sesuai untuk pemula, dengan lengkung pembelajaran yang lancar dan sintaks ringkas; JavaScript sesuai untuk pembangunan front-end, dengan lengkung pembelajaran yang curam dan sintaks yang fleksibel. 1. Sintaks Python adalah intuitif dan sesuai untuk sains data dan pembangunan back-end. 2. JavaScript adalah fleksibel dan digunakan secara meluas dalam pengaturcaraan depan dan pelayan.

Python dan JavaScript mempunyai kelebihan dan kekurangan mereka sendiri dari segi komuniti, perpustakaan dan sumber. 1) Komuniti Python mesra dan sesuai untuk pemula, tetapi sumber pembangunan depan tidak kaya dengan JavaScript. 2) Python berkuasa dalam bidang sains data dan perpustakaan pembelajaran mesin, sementara JavaScript lebih baik dalam perpustakaan pembangunan dan kerangka pembangunan depan. 3) Kedua -duanya mempunyai sumber pembelajaran yang kaya, tetapi Python sesuai untuk memulakan dengan dokumen rasmi, sementara JavaScript lebih baik dengan MDNWebDocs. Pilihan harus berdasarkan keperluan projek dan kepentingan peribadi.

Peralihan dari C/C ke JavaScript memerlukan menyesuaikan diri dengan menaip dinamik, pengumpulan sampah dan pengaturcaraan asynchronous. 1) C/C adalah bahasa yang ditaip secara statik yang memerlukan pengurusan memori manual, manakala JavaScript ditaip secara dinamik dan pengumpulan sampah diproses secara automatik. 2) C/C perlu dikumpulkan ke dalam kod mesin, manakala JavaScript adalah bahasa yang ditafsirkan. 3) JavaScript memperkenalkan konsep seperti penutupan, rantaian prototaip dan janji, yang meningkatkan keupayaan pengaturcaraan fleksibiliti dan asynchronous.

Enjin JavaScript yang berbeza mempunyai kesan yang berbeza apabila menguraikan dan melaksanakan kod JavaScript, kerana prinsip pelaksanaan dan strategi pengoptimuman setiap enjin berbeza. 1. Analisis leksikal: Menukar kod sumber ke dalam unit leksikal. 2. Analisis Tatabahasa: Menjana pokok sintaks abstrak. 3. Pengoptimuman dan Penyusunan: Menjana kod mesin melalui pengkompil JIT. 4. Jalankan: Jalankan kod mesin. Enjin V8 mengoptimumkan melalui kompilasi segera dan kelas tersembunyi, Spidermonkey menggunakan sistem kesimpulan jenis, menghasilkan prestasi prestasi yang berbeza pada kod yang sama.

Aplikasi JavaScript di dunia nyata termasuk pengaturcaraan sisi pelayan, pembangunan aplikasi mudah alih dan Internet of Things Control: 1. Pengaturcaraan sisi pelayan direalisasikan melalui node.js, sesuai untuk pemprosesan permintaan serentak yang tinggi. 2. Pembangunan aplikasi mudah alih dijalankan melalui reaktnatif dan menyokong penggunaan silang platform. 3. Digunakan untuk kawalan peranti IoT melalui Perpustakaan Johnny-Five, sesuai untuk interaksi perkakasan.

Saya membina aplikasi SaaS multi-penyewa berfungsi (aplikasi edTech) dengan alat teknologi harian anda dan anda boleh melakukan perkara yang sama. Pertama, apakah aplikasi SaaS multi-penyewa? Aplikasi SaaS Multi-penyewa membolehkan anda melayani beberapa pelanggan dari Sing


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

MinGW - GNU Minimalis untuk Windows
Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

DVWA
Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

SecLists
SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma