Sobes.tech
Junior

როგორ ხდება სტრიქონის გადაქცევა რიცხვად JavaScript-ში?

sobes.tech AI

პასუხი AI-სგან

JavaScript-ში სტრიქონის რიცხვად გარდაქმნა შესაძლებელია რამდენიმე გზით:

  • მიუკერძოებელი ტიპის გარდაქმნა:

    • მათემატიკური ოპერატორები: მაგალითად, უნარიანი პლუსი + ან გამოკლება -.
    // მიუკერძოებელი გარდაქმნა უნარიანი პლუსით
    let str = "123";
    let num = +str; // num = 123 (რიცხვი)
    
    • მათემატიკური ოპერაციები: როდესაც იყენებთ მათემატიკურ ოპერატორებს, JavaScript-ი ცდილობს გარდაქმნას ოპერანდები რიცხვებად.
    // მიუკერძოებელი გარდაქმნა გამოკლებით
    let str1 = "10";
    let str2 = "5";
    let result = str1 - str2; // result = 5 (რიცხვი)
    
  • მოწესრიგებელი ტიპის გარდაქმნა:

    • parseInt(string, radix): გარდაქმნის სტრიქონს მთელ რიცხვად. მეორე არგუმენტი radix (სისტემის საფუძველი) რეკომენდირებულია მითითება, რათა თავიდან აიცილოთ მოულოდნელი შედეგები.
    // მოწესრიგებელი გარდაქმნა parseInt-ით
    let strInt = "42px";
    let numInt = parseInt(strInt, 10); // numInt = 42 (მთელი რიცხვი)
    
    let strBinary = "101";
    let numBinary = parseInt(strBinary, 2); // numBinary = 5 (მთელი რიცხვი)
    
    • parseFloat(string): გარდაქმნის სტრიქონს ათწილად რიცხვად. ანალიზს ახდენს პირველ არ-რიცხვიან სიმბოლომდე ან წერტილამდე.
    // მოწესრიგებელი გარდაქმნა parseFloat-ით
    let strFloat = "3.14abc";
    let numFloat = parseFloat(strFloat); // numFloat = 3.14 (ათწილად რიცხვი)
    
    • Number(value): გარდაქმნის ნებისმიერ მნიშვნელობას რიცხვად. უფრო მკაცრი მიდგომაა, ვიდრე parseInt და parseFloat. თუ სტრიქონი ვერ გარდაიქმნება სრულად რიცხვად, აბრუნებს NaN-ს.
    // მოწესრიგებელი გარდაქმნა Number-ით
    let strNum = "123.45";
    let numFromNumber = Number(strNum); // numFromNumber = 123.45 (რიცხვი)
    
    let strInvalid = "hello";
    let numInvalid = Number(strInvalid); // numInvalid = NaN
    

განსხვავებები და თავისებურებები:

მეთოდი აღწერა აბრუნებს არავალიდურ სტრიქონს ანალიზს ახდენს პირველ არ-რიცხვიან სიმბოლომდე
+string მიუკერძოებელი გარდაქმნა უნარიანი პლუსით. NaN არა (სრული სტრიქონი)
string - 0 მიუკერძოებელი გარდაქმნა გამოკლებით. NaN არა (სრული სტრიქონი)
parseInt() მთლიანი რიცხვის ანალიზი. NaN დიახ
parseFloat() ათწილად რიცხვის ანალიზი. NaN დიახ
Number() მოწესრიგებული გარდაქმნა. უფრო მკაცრი. NaN არა (სრული სტრიქონი)

მეთოდის არჩევანი დამოკიდებულია კონკრეტულ დავალებაზე და შესასვლელი სტრიქონის მოლოდინზე. Number() არის სასურველი სტრიქონების გარდაქმნისთვის, რომლებიც წარმოადგენს მთელ ან ათწილად რიცხვებს, გარეშე ზედმეტი სიმბოლოების. parseInt() და parseFloat() სასარგებლოა რიცხვების ამოღებისთვის სტრიქონებიდან, რომლებიც შეიცავს დამატებით სიმბოლოს (მაგალითად, ერთეულები). მიუკერძოებელი გარდაქმნა უნდა გამოიყენოს ფრთხილად, მისი ქცევის გაგებით.