دیروز درباره عدد و استرینگ یاد گرفتیم و امروز درباره سه تا از انواع داده دیگه توی جاوااسکریپت یاد میگیریم: بولیَن، نال و تعریفنشده.
بولیَن
بولیَن نوعی از دادهس که میتونه true
یا false
باشه؛ یعنی یا درسته یا غلطه؛ خیلی سادهس و جلوتر که درباره مقایسه و منطق شرطی یاد بگیرید متوجه میشید که چقدر کاربردیه. فعلاً فقط بدونید هر وقت عمل مقایسه انجام بدیم، در واقع داریم یه بولیَن میسازیم که ممکنه true
یا false
باشه. خودتون میتونید یه سری مقایسه انجام بدید و نتیجه رو توی کنسول نگاه کنید. من یه فایل ساختم به اسم boolean.js و اینارو توش امتحان کردم:
console.log(4 > 3) // true
console.log(3 > 4) // false
console.log(3 == 3) // true
نال
نال یعنی تُهی، یعنی هیچ. متغیر نال متغیریه که خالیه و هیچ چیزی توش نیست؛ دقت کنید که این هممعنی با عدد صفر نیست، چون عدد صفر یه عدده ولی نال هیچ چی نیست؛ همچنین این یه متغیر تعریفنشده نیست.
let empty = null
console.log(empty) // null
تعریفنشده
اگه یه متغیر بسازید ولی هیچ مقداری بهش نسبت ندید، مقدار اون متغیر undefined یا تعریفنشده میشه.
let firstName
console.log(firstName) // undefined
اینا سه نوع دادهای بودن که قرار بود امروز دربارهش یاد بگیریم، اما شاید حالا وقت خوبی باشه که درباره یه سری چیزای خیلی مهم و اساسی توی جاوااسکریپت یاد بگیریم. از اعمال ریاضی شروع میکنیم که مورد علاقه خودمه.
اعمال ساده ریاضی
خبر خوب اینه که پروژههای وب معمولاً ریاضیات خیلی پیچیدهای ندارن و با اعمال خیلی ساده ریاضی سر و کار دارن (مگه این که پروژه خاصی باشه). با این علامتهایی که این زیر لیست کردم میتونیم روی اعداد، اعمال ساده ریاضی انجامم بدیم. توی مثال بعدی میتونید اعداد رو به دلخواه خودتون تغییر بدید و نتیجه هر کدوم از اعمال ریاضی رو توی کنسول مرورگرتون ببینید.
- جمع:
+
- تفریق:
-
- ضرب:
*
- تقسیم:
/
- باقیمانده:
%
- توان:
**
let numOne = 5
let numTwo = 3
let sum = numOne + numTwo
let diff = numOne - numTwo
let mult = numOne * numTwo
let div = numOne / numTwo
let remainder = numOne % numTwo
let powerOf = numOne ** numTwo
console.log(sum)
console.log(diff)
console.log(mult)
console.log(div)
console.log(remainder)
console.log(powerOf)
مقایسه در جاوااسکریپت
خیلی وقتا پیش میاد که لازمه مقادیری رو با همدیگه مقایسه کنیم، برای این کار باید از علامتهای مربوط به مقایسه استفاده کنیم. میتونیم مقایسه کنیم که یه مقدار با یه مقدار دیگه برابره، یا مثلاً ازش کوچکتر یا بزرگتره.
- فقط مقدارِ برابر:
==
- هم مقدار و هم نوع داده برابر:
===
- نابرابر:
=!
- بزرگتر از:
>
- کوچکتر از:
<
- بزرگتر یا مساوی:
>=
- کوچکتر یا مساوی:
<=
console.log(3 > 2) // true
console.log(3 >= 2) // true
console.log(3 < 2) // false
console.log(2 < 3) // true
console.log(2 <= 3) // true
console.log(3 == 2) // false
console.log(3 != 2) // true
console.log(3 == '3') // true, compare only value
console.log(3 === '3') // false, compare both value and data type
console.log(3 !== '3') // true, compare both value and data type
console.log(3 != 3) // false, compare only value
console.log(3 !== 3) // false, compare both value and data type
- علامت آمپرسَند ـ
&&
ـ همه شروط درست باشن - علامت پایپ ـ
||
ـ یکی از شروط درست باشه - علامتِ نفی ـ
!
ـ تبدیل درست به غلط و غلط به درست
// && ampersand
const check = 4 > 3 && 10 > 5 // true
const check = 4 > 3 && 10 < 5 // true
const check = 4 < 3 && 10 < 5 // false
// || pipe
const check = 4 > 3 || 10 > 5 // true
const check = 4 > 3 || 10 < 5 // true
const check = 4 < 3 || 10 < 5 // false
// ! negation
let check = 4 > 3 // true
let check = !(4 > 3) // false
let isLightOn = true
let isLightOff = !isLightOn // false
let isMarried = !false // true
شرط
خیلی جاها نیاز داریم که یه شرط بنویسیم؛ یعنی یه برنامه بنویسیم که اگه یه چیزی true
بود یه کاری برامون انجام بده و اگه false
بود یه کار دیگه انجام بده. به مثالای زیر نگاه کنید:
let isRaining = true
isRaining
? console.log('You need a rain coat.')
: console.log('No need for a rain coat.')
// You need a rain coat.
isRaining = false
isRaining
? console.log('You need a rain coat.')
: console.log('No need for a rain coat.')
// No need for a rain coat.
توی مثال بالا وقتی متغیر isRaining
صحیح باشه، برنامه کد بعد از علامت سؤالو اجرا میکنه و بهمون میگه که به یه لباس بارونی نیاز داریم؛ اما چند خط بعد که متغیر isRaining
رو به false
تغییر دادیم، برنامه کد بعد از دونقطه رو اجرا کرد و بهمون گفت که نیازی به یه لباس بارونی نیست. جذاب نیست؟ یه مثال دیگه میتونه این طوری باشه:
let number = 5
number > 0
? console.log(`${number} is a positive number`)
: console.log(`${number} is a negative number`)
// 5 is a positive number
number = -5
number > 0
? console.log(`${number} is a positive number`)
: console.log(`${number} is a negative number`)
// -5 is a negative number
دیدگاهتان را بنویسید