জাভাস্ক্রিপ্ট কি একটি টাইপযুক্ত ভাষা?


104

আমি খুঁজে পেয়েছি যে কিছু লোক জাভাস্ক্রিপ্টকে একটি "গতিময়, দুর্বল টাইপড" ভাষা বলে, তবে কেউ কেউ "টাইপড" বলে? আসলেই এটি কোনটি?

উত্তর:


133

জাভাস্ক্রিপ্ট হয় untyped:


(উত্স: no.gd )

এমনকি ব্রেন্ডন আইচও তাই বলেছেন। টুইটারে, তিনি এই প্রশ্নের সাথে যুক্ত একটি সুতোর জবাব দিয়েছেন:

... একাডেমিক প্রকারগুলি "স্ট্যাটিক ধরণের নয়" মানে "অবিরতবিহীন" ব্যবহার করে ...

সুতরাং সমস্যাটি হ'ল টাইপবিহীন কয়েকটি আলাদা সংজ্ঞা রয়েছে ।

উপরোক্ত উত্তরের একটিতে একটি সংজ্ঞা সম্পর্কে কথা বলা হয়েছে - রানটাইম মানগুলি ট্যাগ করে না এবং প্রতিটি মানকে বিট হিসাবে দেখায়। জাভাস্ক্রিপ্ট করে ট্যাগ মূল্যবোধ ও যারা ট্যাগ উপর ভিত্তি করে বিভিন্ন আচরণ আছে। সুতরাং জাভাস্ক্রিপ্ট অবশ্যই এই বিভাগে ফিট করে না।

অন্য সংজ্ঞাটি প্রোগ্রামিং ল্যাঙ্গুয়েজ থিওরি থেকে (ব্র্যান্ডন যে একাডেমিক বিষয়টিকে উল্লেখ করছেন) from এই ডোমেনে, untyped মাত্র উপায়ে সবকিছু একটি একক টাইপ জন্যে

কেন? কারণ কোনও ভাষা কেবল তখনই একটি প্রোগ্রাম তৈরি করে যখন প্রমান করতে পারে যে প্রকারগুলি প্রান্তিককরণ (ওরফে কারি-হাওয়ার্ড চিঠিপত্র ; প্রকারগুলি উপপাদ্য, প্রোগ্রামগুলি প্রমাণ)। একটি টাইপযুক্ত ভাষায় এর অর্থ:

  1. একটি প্রোগ্রাম সর্বদা উত্পন্ন হয়
  2. অতএব প্রকার সবসময় মেলে
  3. সুতরাং শুধুমাত্র এক প্রকার থাকতে হবে

একটি টাইপ করা ভাষার বিপরীতে:

  1. একটি প্রোগ্রাম জেনারেট নাও হতে পারে
  2. কারণ ধরণগুলি মেলে না
  3. কারণ একটি প্রোগ্রামে একাধিক প্রকার থাকতে পারে

তাই সেখানে যদি আপনি,, PLT মধ্যে, যাও untyped মাত্র উপায়ে পরিবর্তনশীল টাইপ করা এবং টাইপ করা মানে স্ট্যাটিক্যালি টাইপ করা । জাভা স্ক্রিপ্ট অবশ্যই এই বিভাগে টাইপ করা হয়।

আরো দেখুন:


6
এবং অবশ্যই, "কোনও স্ট্যাটিক প্রকার নয়" "কোনও প্রকারের ঘোষণা নয়" এর মতো নয়।
আন্দ্রেস রসবার্গ

+1 টি। আপনি সম্ভবত এছাড়াও সংযুক্ত থাকবে এই আপনার উত্তর। এই "দুর্বলভাবে টাইপ করা" বিএস খুব বেশি বিস্তৃত।
মিসিংফ্যাক্টর

2
প্রোগ্রামিং ভাষার তত্ত্বটি সঠিক The দৈত্যাকার স্ক্রিনশটটি ভুল।
অ্যালেক্স ডাব্লু

2
এই উত্তরটি হার্পারের ব্লগ পোস্টটির উল্লেখ করে আমি খুশি হয়েছি তবে পিএলটি সম্প্রদায় "একতাবদ্ধ" এর পক্ষে "অব্যক্ত" বাদ দিলে ভাল লাগবে। "টাইপড" অর্থ "জাস্ট বিটস" এর সংজ্ঞাটি আসলে বোঝায়। এমন ভাষার বর্ণনার জন্য "আনটাইপড" ব্যবহার করতে যার আনুষ্ঠানিক স্পেসিফিকেশনটি "টাইপ" শব্দটি ব্যবহার করে এবং বলে যে এর সাতটি ধরণের (অপরিজ্ঞাত, নাল, সংখ্যা, স্ট্রিং, বুলিয়ান, প্রতীক এবং অবজেক্ট) সত্যই বিভ্রান্তিকর। বেশিরভাগ লোকেরা এই ধরণের ধারণাটি পিএলটি ডিএফ থেকে আলাদা করতে চান না।
রায় তোয়াল

4
আপনার 1. 2. 3.টাইপ করা ভাষার জন্য জাভাস্ক্রিপ্টের সাথে মেলে না। এখানে কেবল এক প্রকারই নেই - প্রায় 4 - 5 রয়েছে তাই যা জাভাস্ক্রিপ্টটি টাইপ না করে তা প্রদর্শন করে কীভাবে?
ডন চেইডল

82

/ strong দুর্বল করতে কিভাবে কম্পাইলার, যদি প্রযোজ্য হয়, হ্যান্ডলগুলি টাইপিং সম্পর্কিত ভাবা যেতে।

  • দুর্বলভাবে টাইপ করা মানে সংকলক, যদি প্রযোজ্য হয় তবে সঠিক টাইপিং প্রয়োগ করে না। নিহিত সংকলক বাধা ছাড়াই, নির্দেশটি রান-টাইমের সময় ত্রুটি করবে will

    "12345" * 1 === 12345  // string * number => number

    দৃ typ়ভাবে টাইপ করা মানে একটি সংকলক রয়েছে এবং এটি আপনাকে স্ট্রিং থেকে পূর্ণসংখ্যায় স্পষ্ট কাস্ট করতে চায়।

    (int) "12345" * 1 === 12345

    উভয় ক্ষেত্রেই, কিছু সংকলকের বৈশিষ্ট্যগুলি আপনার জন্য রূপান্তর করার জন্য সংকলন-সময় নির্দেশকে স্পষ্টতই পরিবর্তন করতে পারে, যদি এটি নির্ধারণ করতে পারে যে এটি করা সঠিক জিনিস।

    এখনও অবধি, জাভাস্ক্রিপ্টকে নট-স্ট্রংলি টাইপযুক্ত হিসাবে শ্রেণীবদ্ধ করা যেতে পারে। এর অর্থ হয় এটি দুর্বল-টাইপযুক্ত বা আন-টাইপযুক্ত।

ভাষার নির্দেশাবলী কীভাবে প্রকারভেদ করে সে সম্পর্কে গতিশীল / স্ট্যাটিক সম্পর্কে চিন্তাভাবনা করা যেতে পারে।

  • ডায়নামিকালি টাইপ করা মানে মানটির প্রকার প্রয়োগ করা হয় তবে চলকটি কেবল কোনও প্রকারের যে কোনও মানকে উপস্থাপন করে।

    x = 12345;    // number
    x = "string"; // string
    x = { key: "value" }; // object
    y = 123 + x; // error or implicit conversion must take place.
    

    স্ট্যাটিকালি টাইপ করা মানে ভেরিয়েবল টাইপটি দৃ .়ভাবে প্রয়োগ করা হয় এবং মানের প্রকারটি কম প্রয়োগ করা হয়।

    int x = 12345; // binds x to the type int
    x = "string";  // too late, x is an integer - error
    string y = 123; // error or implicit conversion must take place.
    

    এখনও অবধি, জাভাস্ক্রিপ্টকে নোট-স্ট্যাটিকালি-টাইপযুক্ত হিসাবে শ্রেণীবদ্ধ করা যেতে পারে। এছাড়াও, এটিকে টাইপ করা থাকলে ডায়নামিকালি টাইপ করা হয়। সুতরাং আমাদের দেখতে হবে টাইপিংয়ের অর্থ কী।

টাইপ করা মানে হল ভাষাটি বিভিন্ন ধরণের যেমন স্ট্রিং , সংখ্যা , বুলিয়ান , অবজেক্ট , অ্যারে , নাল , অপরিজ্ঞাত এবং এরমধ্যে পার্থক্যকরে। এছাড়াও প্রতিটি অপারেশন নির্দিষ্ট প্রকারের সাথে আবদ্ধ। সুতরাং আপনিএকটি স্ট্রিং দ্বারা একটি পূর্ণসংখ্যা ভাগ করতে পারবেন না।

    2 / "blah"  // produces NaN

Untyped উপায়ে বিভাজক অপারেশন পূর্ণসংখ্যা দ্বারা স্ট্রিং প্রথম চার বাইট চিকিত্সায় স্থাপিত হবে স্ট্রিং হিসাবে পূর্ণসংখ্যা । এর কারণ হ'ল শিরোনামহীন অপারেশনগুলি সরাসরি বিটগুলিতে সঞ্চালিত হয়, পর্যবেক্ষণের জন্য কোনও ধরণের নেই। ফলাফলটি বেশ অপ্রত্যাশিত কিছু হবে:

    2 / "blah"  // will be treated as  2 / 1500275048

যেহেতু জাভাস্ক্রিপ্ট টাইপড হওয়ার সংজ্ঞা অনুযায়ী আচরণ করে, এটি অবশ্যই হওয়া উচিত। এবং তাই এটি অবশ্যই ডায়নামিকালি টাইপড, এবং দুর্বলভাবে টাইপ করা উচিত।

যদি কেউ দাবি করে যে জাভাস্ক্রিপ্টটি শিরোনামহীন, এটি কেবলমাত্র একাডেমিক তত্ত্বের জন্য, ব্যবহারিক প্রয়োগের জন্য নয়।


1
তবে আমি মনে করি শেষ বিবৃতিতে একটি বৈপরীত্য রয়েছে। জাভাস্ক্রিপ্টে, পূর্ণসংখ্যার স্ট্রিং বিভাগের ফলাফলটি পূর্ণসংখ্যা বা স্ট্রিংয়ের কোনও মানের জন্য ভালভাবে সংজ্ঞায়িত হয়। এটি কেবল খুব দরকারী নয়!
ডেনিজ ডোগান

আপনার যদি আরও ভাল সংজ্ঞা / বর্ণনা থাকে তবে এটিকে সম্পাদনা করতে দ্বিধা বোধ করবেন। এজন্য আমি এটিকে সম্প্রদায়টির উইকি বানিয়েছি।
গম্বো

@ এসকুরপুর: আপনি ডায়নামিক এবং দুর্বল টাইপিংয়ের অর্থ সম্পূর্ণরূপে বদলে দিয়েছিলেন - এটিকে সংশোধন করেছেন।
রিনি সরসু

ওহ, দুঃখিত, আপনি এটি সম্পাদনা করেছেন কেননা আমি এটিও সম্পাদনা করছিলাম এবং আমি আপনার পরিবর্তনগুলি ওভাররাইট করেছিলাম।
রিনি সরসু

3
-1। আপনি পড়তে প্রয়োজন এই
মিসিংফ্যাক্টর

48

জাভাস্ক্রিপ্ট দুর্বলভাবে টাইপ করা হয় । এটি অবশ্যই "টাইপযুক্ত" নয় তবে এর দুর্বল টাইপযুক্ত প্রকৃতি অন্তর্নিহিত রূপান্তরগুলির ক্ষেত্রে অনেক স্বাচ্ছন্দ্যের অনুমতি দেয়।

মনে রাখবেন যে জাভাস্ক্রিপ্টও গতিশীলভাবে টাইপ করা আছে। এই টাইপিং পদ্ধতিটি যা "হাঁসের টাইপিং" হিসাবে পরিচিত তা মঞ্জুরি দেয় ।

তুলনা করার জন্য বিবেচনা করুন যে জাভাস্ক্রিপ্ট দৃ strongly ়ভাবে টাইপ করা হয় না বা এটি স্ট্যাটিকালি টাইপ করা হয় না। কখনও কখনও কোন জিনিস যা না তা বোঝার ফলে এটি কী তা আরও ভালভাবে দেখতে আপনাকে সহায়তা করতে পারে।


2
-1। আপনি পড়তে প্রয়োজন এই
মিসিংফ্যাক্টর

3
শীর্ষে ভোট দেওয়া উত্তরের চেয়ে এই উত্তরটি আরও ভাল এবং আরও নির্ভুল।
অ্যালেক্স ডাব্লু

3
@ জিম্বো জনি: সঠিক নয়। যদি কোনও অ্যাসেম্বলি দেবের উপস্থিতি না থাকে তবে প্রতিটি ভাষা টাইপ করা আছে তা বলা খুব বেশি ভুল হবে না। শিরোনামহীন মানে একমাত্র অপারেশনগুলি সরাসরি বিট ম্যানিপুলেশনের কাজ। তবে বিবেচনা করুন যে জাভাস্ক্রিপ্টটিতে টু স্ট্রিং () এবং পার্সেন্ট () রয়েছে। এর চেয়ে বেশি টাইপ করবেন না।
সুমেরে

2
@ সুমেরে - ও'রিলির "জাভাস্ক্রিপ্ট: দ্য সংজ্ঞা নির্দেশিকা" এর একটি উদ্ধৃতি : "জাভা স্ক্রিপ্ট এবং জাভা এবং সি এর মতো ভাষার মধ্যে একটি গুরুত্বপূর্ণ পার্থক্যটি হচ্ছে জাভাস্ক্রিপ্টটি টাইপ করা হয়নি। এর একটি অংশের অর্থ, একটি জাভাস্ক্রিপ্ট ভেরিয়েবল জাভা বা সি ভেরিয়েবলের বিপরীতে যে কোনও ডেটাটাইপের মান রাখতে পারে, এটি কেবলমাত্র একটি নির্দিষ্ট ধরণের ডেটা ধরে রাখতে পারে যার জন্য এটি ঘোষণা করা হয়।
জিম্বো জনি

3
সুতরাং আপনি যদি বিএস-তে কিনে থাকেন তবে কিছু বংশধর দাবি করেন যে একাডেমিক লোকেরা উদ্দেশ্যহীনভাবে "গতিযুক্ত টাইপযুক্ত" শব্দটির অর্থ "অব্যবহৃত" শব্দটি ব্যবহার করে। তারপরে হ্যাঁ, জাভাস্ক্রিপ্টটি আপনার সমস্ত প্রমাণ দিয়েই টাইপ করা আছে। তবে আপনি যদি জানেন যে "টাইপযুক্ত" ভুলভাবে সত্য ভাষায় "গতিশীল টাইপড" ভাষা উপস্থাপন করতে ব্যবহৃত হয়, তবে কেবল ডাঙ ভাষাগুলিকে "গতিশীল টাইপড" বলুন। tinyurl.com/czhcv54
Suamere

8

লেখকের মতে জাভাস্ক্রিপ্টও ডায়নামিকালি টাইপ করা হিসাবে শ্রেণিবদ্ধ করা হয়েছে । উইকি জানিয়েছে যে ডায়নামিকালি টাইপ করা ভাষাগুলি সংকলকটির পরিবর্তে রানটাইমে টাইপ করা হয় যখন দুর্বল টাইপড আপনার কোডের মধ্যে ফ্লাইতে টাইপ পরিবর্তন করার ক্ষমতা বোঝায়। সুতরাং হ্যাঁ এটি উভয়ই গতিশীল টাইপ করা হয়েছে এবং দুর্বল টাইপ করা।


6

এখানে যে সমস্যাটি অনেক প্রোগ্রামারকে বিভ্রান্ত করছে তা হ'ল এর মতো সংজ্ঞাটি কোথাও প্রমিত হয় না। টাইপযুক্ত প্রোগ্রামিং ভাষাটি শব্দটি দ্ব্যর্থক। এটি কি এমন কোনও ভাষার সাথে উল্লেখ করে যেটির কোনও ডেটা টাইপ নেই বা এমন একটি ভাষা যা ল্যাম্বডা ক্যালকুলাস আনটাইপযুক্ত বৈকল্পিক ?

জাভাস্ক্রিপ্ট / ইসসিএমএসক্রিপ্টের একটি টাইপ সিস্টেম রয়েছে এবং এর সমস্ত ফাংশনের ডোমেন কোনও রেফারেন্স স্পেসিফিকেশন টাইপ গ্রহণ করবে। বাস্তবে জাভাস্ক্রিপ্টের একক ডেটা টাইপ রয়েছে এর অর্থ। এটি বাস্তবায়নের বিষয় যা খুব উন্নত জাভাস্ক্রিপ্ট প্রোগ্রামারদের কাছে আরও গুরুত্বপূর্ণ। গড় জাভাস্ক্রিপ্ট প্রোগ্রামার কেবলমাত্র বিমূর্ত ভাষা ডেটা ধরণের বিষয়ে যত্নশীল যা ECMAScript দ্বারা নির্দিষ্ট করা হয়েছে।

প্রতিদিনের প্রোগ্রামার প্রসঙ্গে, গবেষক বা তাত্ত্বিক কম্পিউটার বিজ্ঞানী নন, টাইপযুক্ত শব্দটি একটি ভুলবিত্ত হিসাবে ব্যবহৃত হয় কারণ বেশিরভাগ লোক ল্যাম্বডা ক্যালকুলাস করেন না। সুতরাং এই শব্দটি জনগণকে বিভ্রান্ত করে এবং মনে হয় যে জাভাস্ক্রিপ্টের কোনও ডেটা টাইপ নেই যা কেবল সত্য নয়। যে কেউ কখনও ব্যবহার করেছেন typeofজানেন যে জাভাস্ক্রিপ্টের নিজস্ব ভাষার ডেটা ধরণের রয়েছে:

var test = "this is text";
typeof(test);

উৎপাদনের

"STRING"

এর নাম ECMAScript ভাষার জন্য নিম্নলিখিত প্রকারের করবেঃ undefined, null, string, boolean, number,object

http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf

জাভাস্ক্রিপ্টের জন্য আরও সঠিক উপাধি স্পষ্টভাবে টাইপ করা হবে, গতিশীলভাবে টাইপ করা হবে, বা দুর্বলভাবে / আলগাভাবে টাইপ করা হবে (বা এর কিছু সংমিশ্রণে) যে জাভাস্ক্রিপ্ট কিছু ক্ষেত্রে টাইপ কর্কশন ব্যবহার করে যা টাইপটিকে অন্তর্নিহিত করে কারণ আপনাকে স্পষ্টভাবে নির্দিষ্ট করতে হবে না আপনার ভেরিয়েবল টাইপ। এটি দুর্বলভাবে numberটাইপের আওতায় পড়ে কারণ, কিছু ভাষার চেয়ে ভিন্ন যা ভাসা এবং পূর্ণসংখ্যার ইত্যাদির মধ্যে পার্থক্য করে, এটি কেবল একটি সংখ্যাকে সমস্ত সংখ্যার অন্তর্ভুক্ত করতে ব্যবহার করে এবং পূর্বে উল্লিখিত [ECMAScript বিভাগের ধারা 9] প্রকারের জবরদস্তি ব্যবহার করে , এর বিপরীতে শক্তিশালী বিপরীতে জোরালোভাবে টাইপ করা ভাষাতে খুব নির্দিষ্ট ডেটা টাইপ থাকে (যেমন আপনাকে নির্দিষ্ট করতে হবে intবা করতে হবে float)।

স্থিতিশীল এবং গতিশীল টাইপযুক্ত ভাষার সংজ্ঞা মানযুক্ত করা হয় না, তবে কম্পিউটারগুলি যখন বিকশিত হতে শুরু করত তখন একটিও বাইটের আকার ছিল না। স্থির এবং গতিশীল টাইপিং প্রায়শই নির্দিষ্ট ভাষার বৈশিষ্ট্যগুলির উপস্থিতি উল্লেখ করে। যার মধ্যে একটি রানটাইম টাইপ-চেকিং বা ডায়নামিক টাইপ-চেকিং বলা হয় । আপনি যদি জাভাস্ক্রিপ্ট ব্যবহার করেছেন, আপনি ইতিমধ্যে জানেন যে প্রকারগুলি পরীক্ষা করতে এটি রানটাইম অবধি অপেক্ষা করে, যার কারণে আপনি TypeErrorআপনার কোডটি কার্যকর করার সময় ব্যতিক্রম পান। উদাহরণ এখানে

আমি মনে করি শীর্ষ ভোটের উত্তরটি জাভাস্ক্রিপ্ট ফাংশনগুলির বহুবৈচিত্র্যকে এমন ফাংশনগুলির সাথে বিভ্রান্ত করছে যা আক্ষরিক কোনও কিছু গ্রহণ করবে (লাম্বডা ক্যালকুলাসের টাইপযুক্ত রূপগুলি হিসাবে) যা একটি অ্যাসোসিয়েশন ফলস


এটি কোনও মিসনোমার নয়, প্রসঙ্গে বিষয়গুলি দেখুন, স্ট্যাকওভারফ্লো // প্রশ্নগুলি
অ্যান্ড্রেস রসবার্গ

@AndreasRossberg এটা একেবারে হয় একটা আসল নয়। আপনার নির্লজ্জভাবে স্ব-প্রচারিত লিঙ্কটিতে আপনি যা উল্লেখ করেছেন তা হ'ল এক প্রকারের সিস্টেম। এই শব্দটি একটি অসম্পূর্ণ কারণ এটি অস্পষ্ট কারণ। বেশিরভাগ প্রোগ্রামাররা মনে করেন যে কোনও টাইপ করা ভাষার কথা শুনে ডেটা টাইপ করেনি টাইপ সিস্টেম । আমি মনে করি কনরাদ রুডোফের মন্তব্য সত্যই এই পয়েন্টটিকে বাড়িয়ে তোলে
অ্যালেক্স ডব্লু

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

@ আন্দ্রেসরোসবার্গ কনটেক্সটটি এখানে খুব গুরুত্বপূর্ণ। শীর্ষ-ভোট প্রাপ্ত জবাবটি "অপরিশোধিত = কোনও প্রকারের ঘোষণা নয়" বলে যা পরিষ্কারভাবে ভুল। আমি যা বলছি তা হ'ল এটি একটি ভুল ধারণা, এই প্রসঙ্গে। এখানে ল্যাম্বডা ক্যালকুলাসের কথা কেউ উল্লেখ করেনি এবং এটি করা এই সাধারণ ক্ষেত্রে কিছুটা কৌতুকপূর্ণ নয়।
অ্যালেক্স ডাব্লু

1

মনে রাখবেন যে জাভাস্ক্রিপ্ট আপনাকে কীটি জিজ্ঞাসা করতে typeof(your_variable)এবং প্রকারগুলির তুলনা করতে: 5==="5"রিটার্ন দেয় false। সুতরাং আমি মনে করি না আপনি এটিকে টাইপড বলতে পারেন।

এটি গতিশীল এবং (অনুমান হিসাবে) দুর্বল টাইপ করা হয়। আপনি এটি ডাক টাইপিং (অ্যান্ড্রু এর লিঙ্কটি দেখুন) ব্যবহার করেন এবং ক্লাস এবং উত্তরাধিকারের পরিবর্তে প্রোটোটাইপিংয়ের পরে ওওপি সরবরাহ করে তা জানতে চাইতে পারেন ।


ভেরিয়েবলের টাইপিংয়ের সাথে মানগুলির ingালাইয়ের কোনও সম্পর্ক নেই। এটি ভেরিয়েবলের জন্য প্রকারের ঘোষণার সাথে করতে হবে। জাভাস্ক্রিপ্টের মোটেও এর জন্য কোনও গঠন নেই, এই কারণেই খুব কম জাভাস্ক্রিপ্টর এমনকি ধারণাটি বুঝতে পারে এবং কেন তাদের মধ্যে অনেকে ভেরিয়েবল টাইপগুলি ভেরিয়েবলের সাথে তুলনা বা কাস্টিংয়ের সাথে কিছু করতে ভুল হিসাবে চিহ্নিত করে। জেএসে আপনি সমস্ত ঘোষণা করতে পারবেন না ( String a = "blah";বা var a:String = 'blah';টাইপযুক্ত ভেরিয়েবলগুলি) AT এজন্যই এটি টাইপড।
জিম্বো জনি

0

এটি টাইপ করার সময় (আপনি "কিছু টাইপ টাইপ" জিজ্ঞাসা করতে পারেন এবং এর নির্দিষ্ট প্রকারটি শিখতে পারেন, এটি খুব দুর্বল।

প্রদত্ত:

  var a = "5";

আপনি বলতে পারেন যে একটি একটি স্ট্রিং। তবে, আপনি যদি তারপর লিখুন:

  var b = a + 10;

বি 15 এর সমান একটি ইন্টিওরেক্ট, সুতরাং একটি ইন্টার এর মতোই অভিনয় করা। অবশ্যই, আপনি তারপর লিখতে পারেন:

  var c = a + "Hello World";

এবং সি "5 হেলো ওয়ার্ল্ড" এর সমান হবে, সুতরাং এ আবার একটি স্ট্রিংয়ের মতো কাজ করছে।


1) একটি মান ingালাই করা = = একটি ভেরিয়েবল টাইপ 2) এটি দুর্বল নয়, এটি অস্তিত্বহীন। আপনি জাভাস্ক্রিপ্টে কোনও ভেরিয়েবল টাইপ করতে পারবেন না।
জিম্বো জনি

উত্সাহিত কেন এই উত্তর দুটি ডাউন ভোট পেয়েছে। দুর্বল টাইপ করার সময় আমি যে সংজ্ঞাটি পেয়েছি তা সঠিকভাবে বলেছে: একটি মানের ধরণ এটি কীভাবে ব্যবহৃত হয় তার ভিত্তিতে নির্ধারিত হয়।
আইয়ুব

যদিও এটি সঠিক? আমি bসমান পেয়েছি510 : আদর্শ one.com
বিআরসিএসডব্লু
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.