كيفية تنسيق رقم بفصل الآلاف بفواصل في JavaScript؟
مرحباً بالجميع! أنا مبتدئ في JavaScript وواجهت مشكلة: أحتاج إلى عرض أرقام كبيرة على الصفحة، مثل سعر منتج أو عدد المشاهدات. لكن عندما يكون الرقم كبيراً، مثلاً 1234567، يبدو غير قابل للقراءة. أريده أن يظهر كـ "1,234,567" — بفواصل بين منازل الآلاف.
حاولت كتابة دالتي الخاصة، لكنها تعمل بشكل غير صحيح:
```javascript
function formatNumber(num) {
let str = num.toString();
let result = '';
for (let i = 0; i < str.length; i++) {
if (i > 0 && i % 3 === 0) {
result = ',' + result;
}
result = str[str.length - 1 - i] + result;
}
return result;
}
console.log(formatNumber(1234567)); // يطبع "1,234,567" — يبدو أنه يعمل، لكن إذا كان الرقم 123456، نحصل على "123,456" — بينما المطلوب "123,456".
```
لكن لاحظت أنه إذا كان الرقم سالباً أو به جزء عشري (مثلاً -1234567.89)، فإن كل شيء ينهار. بالإضافة إلى ذلك، أعتقد أن الكود الخاص بي معقد جداً. هل يمكن