ini benar-benar terdengar seperti pertanyaan sederhana tetapi saya tidak beruntung mencari. apa yang ada +d
di
function addMonths(d, n, keepTime) {
if (+d) {
cara?
javascript
goh
sumber
sumber
+…
artinya dalam JavaScriptJawaban:
The
+
Operator mengembalikan representasi numerik dari objek. Jadi, dalam kasus khusus Anda, tampaknya akan memprediksikan if pada apakahd
angka tersebut bukan nol.Referensi di sini . Dan, seperti yang ditunjukkan dalam komentar, di sini .
sumber
.parseInt()
?Ini adalah operator "+" unary yang menghasilkan ekspresi numerik. Itu akan sama dengan
d*1
, saya percaya.sumber
Seperti yang dijelaskan dalam jawaban lain, ini mengubah variabel menjadi angka. Berguna khusus ketika d dapat berupa angka atau string
fungsiyang mengevaluasi ke suatu angka.Contoh (menggunakan
addMonths
fungsi dalam pertanyaan):maka
+d
akan dievaluasi ke nomor dalam semua kasus. Dengan demikian menghindari kebutuhan untuk memeriksa jenis dan mengambil jalur kode yang berbeda tergantung pada apakahd
angka, fungsi atau string yang dapat dikonversi ke angka.sumber
+d
tidak akan mengevaluasi ke nomor dengan contoh doa tambahan addMonths+function(){...}
akan menghasilkanNaN
tidak mengevaluasi fungsi