JavaScript Math.sign(x)

JavaScript Math.sign(x) – বাংলা টিউটোরিয়াল

Math.sign(x) হল JavaScript এর একটি Math মেথড যা একটি সংখ্যার চিহ্ন (sign) নির্ধারণ করে দেয়। অর্থাৎ, কোন সংখ্যা ধনাত্মক, ঋণাত্মক, শূন্য বা NaN তা নির্ধারণ করে এবং সেই অনুযায়ী একটি মান রিটার্ন করে।

Math.sign() এর কাজ কী?

Math.sign(x) ব্যবহার করলে আপনি নির্ধারণ করতে পারেন একটি সংখ্যার ধনাত্মক, ঋণাত্মক বা শূন্য অবস্থান। এটি ৫টি ভ্যালু রিটার্ন করতে পারে:

  • 1 যদি x একটি ধনাত্মক সংখ্যা হয়
  • -1 যদি x একটি ঋণাত্মক সংখ্যা হয়
  • 0 যদি x হয় 0
  • -0 যদি x হয় -0
  • NaN যদি x একটি সংখ্যা না হয়

সিনট্যাক্স:

Math.sign(x)

x: যেকোনো সংখ্যা অথবা এক্সপ্রেশন যার চিহ্ন নির্ধারণ করা হবে।

উদাহরণ ১: সাধারণ ইনপুট

<script>
console.log(Math.sign(10)); // 1
console.log(Math.sign(-5)); // -1
console.log(Math.sign(0)); // 0
console.log(Math.sign(-0)); // -0
console.log(Math.sign(“abc”)); // NaN
</script>

ব্যাখ্যা: এই কোডে আমরা বিভিন্ন ইনপুট দিয়েছি এবং Math.sign() প্রতিটি ইনপুট অনুযায়ী উপযুক্ত রিটার্ন ভ্যালু দিয়েছে।

Math.sign(x) ফলাফল তুলনা

ইনপুট (x) ফলাফল (Math.sign(x))
15 1
-3 -1
0 0
-0 -0
“abc” NaN

Math.sign() সম্পর্কে কিছু গুরুত্বপূর্ণ তথ্য

  • NaN ইনপুট দিলে রিটার্ন করে NaN
  • +0 ও -0 আলাদা করে শনাক্ত করতে পারে
  • অবজেক্ট বা নন-নাম্বার ভ্যালু দিলে রিটার্ন NaN হয়
  • ECMAScript 6 (ES6) থেকে এটি JavaScript-এ যুক্ত হয়

️ Math.sign() কোথায় ব্যবহার হয়?

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

উদাহরণ: কীবোর্ড ইনপুট অনুযায়ী মুভমেন্ট

<script>
let velocity = -5;
let direction = Math.sign(velocity);
if (direction === -1) {
console.log(“Move Left”);
} else if (direction === 1) {
console.log(“Move Right”);
}
</script>

উপসংহার

Math.sign(x) একটি দরকারি ফাংশন যখন আপনি জানতে চান একটি সংখ্যা ধনাত্মক, ঋণাত্মক না শূন্য। এটি দ্রুত এবং নির্ভুল সিদ্ধান্ত নিতে সাহায্য করে। তাই যেকোনো প্রজেক্টে যেখানে দিক বা চিহ্ন গুরুত্বপূর্ণ, সেখানেই এটি প্রযোজ্য।


 

Leave a Reply