მნიშვნელობითი და ტიპური უტოლობა JavaScript-ში
ოპერატორ !=-ის გარდა, არსებობს აგრეთვე
ოპერატორი !==, რომელიც ტიპსაც ითვალისწინებს
შედარებისას. მოდით, განვიხილოთ მათ შორის განსხვავებები
მაგალითებზე.
დავუშვათ, ოპერატორი != ადარებს
ორ რიცხვს 3. ეს ოპერატორი ადარებს
მნიშვნელობებს იმაზე, რომ ისინი არ არიან ტოლი. რადგან
ჩვენი მნიშვნელობები სწორედ ტოლია, მაშინ
პირობა იქნება მცდარი:
if (3 != 3) {
console.log('+++');
} else {
console.log('---'); // გაეშვება ეს
}
დავუშვათ, ახლა ჩვენი ერთ-ერთი მნიშვნელობა იქნება
ბრჭყალებში. ამ შემთხვევაში ოპერატორი !=
მაინც ჩათვლის მათ ტოლად (რადგან ემთხვევა
მნიშვნელობა, ხოლო ტიპი არ არის მნიშვნელოვანი ამ ოპერატორისთვის)
და ისევ პირობა იქნება მცდარი:
if ('3' != 3) {
console.log('+++');
} else {
console.log('---'); // გაეშვება ეს
}
მოდით, ახლა შევადაროთ ორი რიცხვი 3
ოპერატორი !==-ის საშუალებით. ის აგრეთვე
ჩათვლის მათ ტოლად:
if (3 !== 3) {
console.log('+++');
} else {
console.log('---'); // გაეშვება ეს
}
ხოლო თუ ახლა ერთ-ერთ სამიანს ბრჭყალებში ავიღებთ,
მაშინ ოპერატორი !== ჩათვლის ჩვენს სამიანებს
უთანასწოროდ, რადგან, მიუხედავად იმისა, რომ მათი მნიშვნელობები ემთხვევა,
მაგრამ მათ გააჩნიათ განსხვავებული ტიპი:
if ('3' !== 3) {
console.log('+++'); // გაეშვება ეს
} else {
console.log('---');
}
კოდის გაშვების გარეშე, დაადგინეთ, რა დაიწერება კონსოლში:
let test1 = '3';
let test2 = '3';
if (test1 != test2) {
console.log('+++');
} else {
console.log('---');
}
კოდის გაშვების გარეშე, დაადგინეთ, რა დაიწერება კონსოლში:
let test1 = '3';
let test2 = '3';
if (test1 !== test2) {
console.log('+++');
} else {
console.log('---');
}
კოდის გაშვების გარეშე, დაადგინეთ, რა დაიწერება კონსოლში:
let test1 = 3;
let test2 = '3';
if (test1 != test2) {
console.log('+++');
} else {
console.log('---');
}
კოდის გაშვების გარეშე, დაადგინეთ, რა დაიწერება კონსოლში:
let test1 = 3;
let test2 = '3';
if (test1 !== test2) {
console.log('+++');
} else {
console.log('---');
}
კოდის გაშვების გარეშე, დაადგინეთ, რა დაიწერება კონსოლში:
let test1 = 3;
let test2 = 2;
if (test1 !== test2) {
console.log('+++');
} else {
console.log('---');
}