একটি টাইপস্ক্রিপ্ট প্যারামিটার নামের জন্য প্রশ্ন চিহ্ন কি


179
export class Thread {
  id: string;
  lastMessage: Message;
  name: string;
  avatarSrc: string;

  constructor(id?: string,
              name?: string,
              avatarSrc?: string) {
    this.id = id || uuid();
    this.name = name;
    this.avatarSrc = avatarSrc;
  }
}

ইন id?কি ?জন্য?

উত্তর:


207

এটা তোলে যেমন প্যারামিটার চিহ্নিত হয় ঐচ্ছিক ।


6
পরিবর্তনশীল নামের শেষে আমি $ প্রতীকটি দেখেছি। ওটার মানে কি?
— সুনীল গার্গ

12
এটি টাইপস্ক্রিপ্টের সাথে সম্পর্কিত নয়। আমি আরএক্সজেএস প্রকল্পগুলিতে এই জাতীয় বাক্য গঠন দেখেছি। ডক থেকে: এটি একটি "স্ট্রিমের উল্লেখ করে এমন ভেরিয়েবলগুলি সনাক্ত করার জন্য একটি সাধারণ আরএক্সজেএস কনভেনশন।" github.com/redux-observable/redux-observable/blob/master/docs/…
— ফিদন হাকাজ

3
@ সুনিলগার্গ $ পোস্টফিক্সটি সাধারণত একটি নামকরণ কনভেনশন যার অর্থ চলকটি পর্যবেক্ষণযোগ্য mean
— java-addict301

30

এটি ptionচ্ছিক প্রকারের পরিবর্তনশীল করা। অন্যথায় ঘোষিত ভেরিয়েবলগুলি এই পরিবর্তনশীলটি ব্যবহার না করা হলে " অপরিজ্ঞাত " দেখায় ।

export interface ISearchResult {  
  title: string;  
  listTitle:string;
  entityName?: string,
  lookupName?:string,
  lookupId?:string  
}

1
আমি সম্মত নই যে এটি একটি "nullaable" প্রকার নির্দেশ করে। এটি ulচ্ছিক ইঙ্গিত দেয়, অযোগ্য নয়। এটি এখনও বৈধ, উদাহরণস্বরূপ, titleউপরের উদাহরণে একটি মান nullথাকতে পারে তবে এটি এমন শ্রেণীর পক্ষে অবৈধ হবে যে দাবি করে যে সংকলন করার সময় ISearchResultকোনও entityNameসম্পত্তি মিস করার জন্য এটি প্রয়োগ করে ।
— জোশ গালাগের 15

8
আমি মনে করি সঠিক নামটি "alচ্ছিক প্যারামিটার"। নালু টাইপ হবে string?। একটি alচ্ছিক অপ্রয়োজনীয় করতে, আপনি করতে চান name?: string?।
— ব্যবহারকারী 276648

@ ডিভিজি আপনি জোশ গালাগের এবং ব্যবহারকারী 276648 এর মন্তব্য বিবেচনা করে আপনার উত্তরটির উন্নতি করতে আপত্তি করবেন?
— ব্যবহারকারী 1460043

@ user1460043 .. আমি আমার উত্তর আপডেট করেছি। আমাকে অবহিত করার জন্য ধন্যবাদ
— ডিভিজি

আমি অনুমান করি যে শব্দগুচ্ছ "alচ্ছিক টাইপ" সি ++, স্কেলা বা পাইথনের মতো ভাষা থেকে উদ্ভূত। যেখানে আপনার জেনেরিক ptionচ্ছিক <টি> টাইপ রয়েছে। প্রকৃতপক্ষে, ?ভেরিয়েবলের পরিবর্তে টাইপ স্পেসিফিকেশন পরে রাখা আরও অর্থবোধ করে । আপনি যদি কিছু পাস না করেন lookupId, তবে এটির ধরণ থাকবে না string।
— মার্টি নিতো

13

parameter?: type একটি সংক্ষিপ্তকরণ parameter: type | undefined


2
বেপারটা এমন না. প্রশ্ন চিহ্নটির অর্থ "alচ্ছিক"। তাই এটির জন্য একটি সাঁটে লেখার "প্যারামিটারটি: টাইপ | অনির্ধারিত = অনির্দিষ্ট" ..
— mcoolive
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.