کدهای یک خطی و کاربردی در جاوا اسکریپت

در ادامه باهم یک لیست از کدهای یک خطی و کاربردی جاوااسکریپت را خواهیم دید. اگر شما هم از این کدهای یک خطی دارید در قسمت نظرات بنویسید تا به این نوشته اضافه شود. من هم به مرور کدهای جدید به نوشته اضافه خواهم کرد.کپی کردن متن در کلیپ بورد (Clipboard)const copyToClipboard = (text) => navigator.clipboard.writeText(text)دریافت متن انتخاب شده توسط کاربرconst getSelectedText = () => window.getSelection().toString()بهم ریختن (Shuffle) یک آرایهنکته: این روش واقعا تصادفی نیست!const shuffleArray = array => array.sort(() => Math.random() - 0.5)تبدیل کد رنگ rgba به hexadecimalconst rgbaToHex = (r, g, b) => &quot#&quot + [r, g, b].map(num => parseInt(num).toString(16).padStart(2, '0')).join('')تبدیل کد رنگ hexadecimal به rgbaنکته: این کد یک خط نیست :)const hexToRgba = hex => { const [r, g, b] = hex.match(/\w\w/g).map(val => parseInt(val, 16)) return `rgba(${r}, ${g}, ${b}, 1)`; }محاسبه میانگین چند عددconst average = (...args) => args.reduce((a, b) => a + b, 0) / args.lengthتشخیص زوج یا فرد بودن یک عددconst isOdd = num => num % 2 !== 0حذف عناصر تکراری از یک آرایهconst uniqueArray = (arr) => [...new Set(arr)]تشخیص خالی بودن یک شی (Object)const isEmpty = obj => Reflect.ownKeys(obj).length === 0 && obj.constructor === Objectمعکوس کردن یک رشتهconst reverseStr = str => str.split('').reverse().join('')محاسبه تعداد روزهای بین دو تاریخconst dayDiff = (d1, d2) => Math.ceil(Math.abs(d1.getTime() - d2.getTime()) / 86400000)تشخیص روز از سال یک تاریخامروز ۱۳ تیرماه است. می‌توانید بگویید امروز چندمین روز از سال است؟ :)const dayInYear = (d) => Math.floor((d - new Date(d.getFullYear(), 0, 0)) / 1000 / 60 / 60 / 24)تبدیل حرف اول یک رشته به حرف بزرگconst capitalize = str => str.charAt(0).toUpperCase() + str.slice(1)تولید یک رشته تصادفی به طول دلخواهconst generateRandomString = length => [...Array(length)].map(() => Math.random().toString(36)[2]).join('')تولید یک عدد تصادفی در بازه دلخواهconst random = (min, max) => Math.floor(Math.random() * (max - min + 1) + min)گرد کردن عدد با تعداد اعشار دلخواهconst round = (n, d) => Number(Math.round(n + &quote&quot + d) + &quote-&quot + d)پاک کردن تمام کوکی‌ها (Cookies)const clearCookies = .split(';').forEach(cookie => = cookie.replace(/^ +/, '').replace(/=.*/, `=;expires=${new Date(0).toUTCString()};path=/`))اسکرول به بالای صفحهconst goToTop = () => window.scrollTo(0, 0)تولید مقادیر Boolean تصادفیconst randomBoolean = () => Math.random() >= 0.5تشخیص نوع یک دادهنوع یک آرایه در جاوااسکریپت با استفاده از typeof چیست؟ :)const typeOf = (obj) => Object.prototype.toString.call(obj).slice(8, -1).toLowerCase()تولید آی‌پی تصادفیconst generateRandomIP = () => Array.from({length: 4}, () => Math.floor(Math.random() * 256)).join('.')محاسبه درصد یک مقدار نسبت به کلconst calculatePercent = (value, total) => Math.round((value / total) * 100)انتخاب تصادفی یک عضو از آرایهconst getRandomItem = (array) => array[Math.floor(Math.random() * array.length)]مرتب سازی آرایه‌ای از اشیا (Objects) بر اساس یک ویژگی (Propery)const sortBy = (arr, key) => arr.sort((a, b) => a[key] > b[key] ? 1 : a[key] < b[key] ? -1 : 0)تشخیص برابر بودن دو آرایه یا شی (Object)const isEqual = (a, b) => JSON.stringify(a) === JSON.stringify(b)ایجاد وقفه به مدت زمان مشخصconst wait = async (milliseconds) => new Promise((resolve) => setTimeout(resolve, milliseconds))افزودن یک مقدار جدید به آرایه در جای مشخصconst insert = (arr, index, newItem) => [...arr.slice(0, index), newItem, ...arr.slice(index)]تعویض مقدار دو متغییر [foo, bar] = [bar, foo]شروع هر کاری سخت است، اما به یاد داشته باشید هر روز کمی آسان‌تر خواهد شد :)بازنشر و نظر شما با ارزش و باعث دلگرمی است ❤︎اگر این نوشته را دوست داشتید می‌توانید من را یک قهوه مهمان کنید :)