জাভাস্ক্রিপ্ট ম্যাথ অবজেক্ট পদ্ধতি - শূন্যে নেতিবাচক


90

জাভাস্ক্রিপ্টে আমি নেতিবাচক শূন্যে সেট করার কোনও পদ্ধতি খুঁজে পাচ্ছি না?

-90 0
-45 হয় 0
0 0 0 হয়ে যায়
90 হয় 90

এরকম কিছু আছে কি? আমার সবেমাত্র গোল সংখ্যা রয়েছে।

উত্তর:


184

ঠিক তেমন কিছু করুন

value = value < 0 ? 0 : value;

বা

if (value < 0) value = 0;

বা

value = Math.max(0, value);

4
দ্রুত জেএসপিফুল মান = মান <0 দেখায়? 0: মান; শীর্ষে রয়েছে jsperf.com/negatives-to-zero

23
আমি Math.maxসবচেয়ে বেশি পছন্দ করি কারণ এটির জন্য কেবল valueএকবারই উল্লেখ করা দরকার
ম্যাট ফ্লেচার

61

আমি মনে করি আপনি ব্যবহার করতে পারেন Math.max()

var num = 90;
num = Math.max(0,num); // 90

var num = -90;
num = Math.max(0,num); // 0

4
এটি আমার মতে গ্রহণযোগ্য উত্তর হওয়া উচিত। শুধু বলছি ... :)
ksugiarto

4
একটি জিনিস মনে রাখবেন Math.max(0, NaN)এবং উভয়ই Math.max(0, undefined)ফিরে NaNMath.max(0, num) || 0
আসুন

8

আপনি যদি চালাক হতে চান:

num = (num + Math.abs(num)) / 2;

তবে, Math.maxবা শর্তসাপেক্ষ অপারেটর আরও অনেক বেশি বোধগম্য হবে।
এছাড়াও, এটিতে বৃহত সংখ্যার জন্য যথার্থ সমস্যা রয়েছে।


4
Math.positive = function(num) {
  return Math.max(0, num);
}

// or 

Math.positive = function(num) {
  return num < 0 ? 0 : num;
}

শূন্যটি ইতিবাচক বা নেতিবাচক নয়, আপনার ক্রিয়াকলাপটি সেই অনুযায়ী নামকরণ করা উচিত
কিলি



-1

আমি বিশ্বাস করি না যে এই জাতীয় ফাংশন দেশীয় ম্যাথ অবজেক্টের সাথে বিদ্যমান। আপনার যদি প্রয়োজন হয় তবে ফাংশনটি পূরণ করার জন্য আপনাকে একটি স্ক্রিপ্ট লিখতে হবে।

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