অপারেটর in

অপারেটর in একটি অবজেক্ট বা অ্যারেতে সম্পত্তি আছে কিনা তা পরীক্ষা করে এবং true অথবা false রিটার্ন করে।

সিনট্যাক্স

javascript'সম্পত্তি' in অবজেক্ট;

উদাহরণ

দেখি অপারেটর in কিভাবে কাজ করে:

javascriptlet obj = {
  name: 'Nick',
  age:  23,
};

console.log('name' in obj); // true
console.log('age'  in obj); // true
console.log('test' in obj); // false

উদাহরণ

দেখি কিভাবে অপারেটর in একটি অ্যারেতে সম্পত্তি পরীক্ষার জন্য প্রয়োগ করা যেতে পারে:

javascriptlet arr = ['green', 'red', 'blue', 'pink']

console.log(0 in arr); // true, এই সূচক সহ একটি উপাদান আছে
console.log(4 in arr); // false, এই সূচক সহ কোন উপাদান নেই
console.log('four' in arr); // false, উপাদানের মান নয়, সূচক প্রয়োজন
console.log('length' in arr); // true, অ্যারের এই ধরনের একটি সম্পত্তি আছে

উদাহরণ

প্রায়শই in এর পরিবর্তে যাচাই করা হয় যে সম্পত্তিটি লজিক্যাল কনটেক্সট - true:

javascriptlet obj = {
  name: 'John',
  height: '177',
};

if ('name' in obj) {} // in সহ শর্তে পরীক্ষা
if (obj.name) {} // কিন্তু বেশিরভাগ ক্ষেত্রে এভাবে লেখা হয়

উভয় বিকল্প ব্যবহার করা যেতে পারে। কিন্তু সর্বদা মনে রাখা উচিত যে খালি স্ট্রিং, 0, null, NaN এবং undefined লজিক্যাল কনটেক্সটে - false। ফলস্বরূপ, যদি সম্পত্তির এইরকম মান থাকতে পারে - তাহলে in ব্যবহার করা উচিত।