להפחית מס' שלא ידוע סוגו - js
-
יש לי מספר שיכול להיות שהוא שלילי ויכול להיות שלא
אני מעוניין להפחית אותו כך שאם הוא שלילי הוא יופחת בשלילי ואם הוא חיובי (לא נשמע טוב בימי קורונה... ) הוא יופחת במספר חיובי
כך:let number = ?100 number - 50 אם המספר הוא 100 הוא יהיה שווה 50
אם המספר הוא -100 הוא יהיה שווה -50 -
-
@dovid כנראה התכוונת ככה:
function subTyped(number, absToSub){ if(number < 0) toSub = absToSub * -1; return number - toSub; } מה זה יותר טוב מככה:
function subTyped(number, toSub){ if(number < 0) return number + toSub; return number - toSub; } ?
-
@dovid אמר בלהפחית מס' שלא ידוע סוגו - js:
if(number < 0)
הערה: יש לדון אם 0 נחשב כמספר חיובי... בכל אופן זה תלוי בדרישה הספציפית של הקוד.
ראה כאן.
-
@shaya אמר בלהפחית מס' שלא ידוע סוגו - js:
יש לדון אם 0 נחשב כמספר חיובי
מזכיר לי את זה. (לא שזה ממש קשור, אבל זה מעניין בכל מקרה)
-
@dovid אמר בלהפחית מס' שלא ידוע סוגו - js:
אבל אולי יש נוסחה מתמטית שחוסכת את הקוד הזה.
function subTyped (number, toSub) { return number - (toSub * (number / Math.abs(number))); } -
@yossiz אמר בלהפחית מס' שלא ידוע סוגו - js:
function subTyped (number, toSub) { return number - (toSub * (number / Math.abs(number))); }
שים לב שתקבל
NaN
כשהערך שלnumber
הוא 0.isNaN(0/0) // true
1/8