javascript - জাভাস্ক্রিপ্ট বস্তু বৈশিষ্ট্য পরীক্ষা করার জন্য অপারেটর "না"




object properties (3)

একটি সম্পত্তি কোন বস্তুর মধ্যে বিদ্যমান না কিনা তা পরীক্ষা করার জন্য জাভাস্ক্রিপ্টে কোনও অপারেটর "ইন ইন" অপারেটর আছে? আমি এই সম্পর্কে গুগল বা SO সম্পর্কে কিছু খুঁজে পাচ্ছি না। এখানে কোডের একটি ছোট স্নিপেট যা আমি এই ধরনের কার্যকারিতা প্রয়োজন যেখানে কাজ করছি:

var tutorTimes = {};
$(checked).each(function(idx) {
    id = $(this).attr('class');
    if(id in tutorTimes) {

    }
    else {
        //Rest of my logic will go here
    }
});

আপনি দেখতে পারেন, আমি অন্য বিবৃতি মধ্যে সবকিছু নির্বাণ চাই। অন্য অংশটি ব্যবহার করার জন্য যদি একটি / অন্য বিবৃতি সেট আপ করা আমার কাছে ভুল মনে হয় ...


অন্য অংশটি ব্যবহার করার জন্য যদি একটি / অন্য বিবৃতি সেট আপ করা আমার কাছে ভুল মনে হয় ...

শুধু আপনার শর্তটি বাতিল করুন, এবং যদি আপনি else ভিতরে যুক্তিটি পাবেন:

if (!(id in tutorTimes)) { ... }

জর্ডোও ইতিমধ্যেই বলেছিলেন, শুধু এটা প্রত্যাখ্যান করুন:

if (!(id in tutorTimes)) { ... }

দ্রষ্টব্য: উপরের পরীক্ষাটি যদি টিউটরটাইমগুলির আইডি তে প্রোটোটাইপ শৃঙ্খলে যে কোনও নাম থাকে, তার সাথে একটি সম্পত্তি থাকে। উদাহরণস্বরূপ, "valueOf" in tutorTimes সত্য ফিরে আসে কারণ এটি "valueOf" in tutorTimes সংজ্ঞায়িত করা হয়।

যদি আপনি কোনও সম্পত্তিটি বর্তমান বস্তুতে উপস্থিত না থাকেন তবে পরীক্ষা করতে চান তবে ব্যবহারযোগ্য প্রোপার্টিটি ব্যবহার করুন:

if (!tutorTimes.hasOwnProperty(id)) { ... }

অথবা আপনি যদি চাবিটি চাবিতে চাও তবে এটি ব্যবহার করতে পারেন:

if (!Object.prototype.hasOwnProperty.call(tutorTimes,id)) { ... }

ব্যক্তিগতভাবে আমি খুঁজে

if (id in tutorTimes === false) { ... }

তুলনায় সহজ পড়তে

if (!(id in tutorTimes)) { ... }

কিন্তু উভয় কাজ করবে।





operators