এটা অনুমান অনুযায়ী।
12.5 যদি বিবৃতি
.....
2. যদি টুবুলিয়ান (গেটভ্যালু (এক্সপ্রেফ)) সত্য হয়, তবে
ক। প্রথম বিবৃতি মূল্যায়ন ফলাফল।
3. অন্য,
....
ToBoolean, অনুমান অনুযায়ী, হয়
টবুলিয়ান বিমূর্ত অপারেশনটি তার যুক্তিটি সারণী 11 অনুযায়ী বুলিয়ান টাইপের একটি মানতে রূপান্তরিত করে:
এবং এই টেবিলটি স্ট্রিং সম্পর্কে এটি বলে:
ফলাফলটি মিথ্যা যদি যুক্তিটি খালি স্ট্রিং হয় (এর দৈর্ঘ্য শূন্য); অন্যথায় ফলাফল সত্য
এখন, কেন "0" == false
আপনাকে সমতা অপারেটরটি পড়তে হবে তা বোঝাতে, যা বলে যে এটি বিমূর্ত ক্রিয়াকলাপ থেকে এটির মান GetValue(lref)
ডানদিকের সাথে একই মিলছে।
যা এই প্রাসঙ্গিক অংশটি বর্ণনা করে:
যদি IsPropertyReferences (V), তবে
ক। যদি HasPrimitiveBase (V) মিথ্যা হয়, তবে আসুন বেস [অভ্যন্তরীণ] অভ্যন্তরীণ পদ্ধতি হোন, অন্যথায় আসুন
নীচে সংজ্ঞায়িত বিশেষ [[get]] অভ্যন্তরীণ পদ্ধতি হোন।
খ। বেসটিকে এটির মান হিসাবে ব্যবহার করে অভ্যন্তরীণ পদ্ধতিটি কল করার ফলাফলটি পাস করুন
আর্গুমেন্টের জন্য getReferencesdName (V)
বা অন্য কথায়, একটি স্ট্রিংয়ের একটি আদিম বেস থাকে, যা অভ্যন্তরীণ পদ্ধতিটি আবার কল করে এবং মিথ্যা দেখায় শেষ হয়।
আপনি যদি getValue অপারেশন ব্যবহার করে জিনিসগুলি মূল্যায়ন করতে চান ==
, আপনি যদি ব্যবহারটি মূল্যায়ন করতে চান তবে ToBoolean
ব্যবহার করুন ===
("কঠোর" সমতা অপারেটর হিসাবেও পরিচিত)
"0"
এটি একটি স্ট্রিং, এবং যেহেতু এটি খালি নয়, এটি সত্য হিসাবে মূল্যায়ন করা হয়।