جاوااسکریپت | JavaScript
515 subscribers
661 photos
141 videos
3 files
516 links
کانال @IR_javascript حاوی اطلاعات مفید در حوزه برنامه نویس فرانت که بصورت روزانه بروز می‌شود.
در این کانال شما به:
[1] مطالب تازه
[2] تحلیل‌های عمیق
[3] نکات آموزشی
[4] چالش
[5] ابزار و راهنمایی‌های کاربردی
دسترسی خواهید داشت.

🆔@IR_javascript
Download Telegram
‏Drizzle یک نوع مدرن ORM TypeScript است که می توانید در پروژه بعدی خود از آن استفاده کنید. وزن آن سبک و فقط 7.4 کیلوبایت است minified + gzipped شده است، shakeable با دقیقا 0 وابستگی است.

‏Drizzle در هر runtime اصلی جاوا اسکریپت مانند NodeJS، Bun، Deno، Cloudflare Workers، توابع Supabase، هر runtime Edge و حتی در مرورگرها کار می کند.

در ضمن عمکرد و پرفورمنس مناسب تری نسبت به prisma دارد که در لینک زیر به مقایسه این دو پرداخته است

🔗https://orm.drizzle.team/

#️⃣#npm_module
🆔@IR_javascript
دسترسی به جهت‌گیری دستگاه در جاوااسکریپت
window.addEventListener('deviceorientation', handleOrientation);

function handleOrientation(event) {
const alpha = event.alpha;
const beta = event.beta;
const gamma = event.gamma;
// Do stuff...
}


🔗https://developer.mozilla.org/en-US/docs/Web/API/Screen/orientation

#️⃣#tip
🆔@IR_javascript
👍3🤯1
‏Autoprefixer —فایل CSS شما را تجزیه می کند و با استفاده از Can I Use، پیشوندهایی را به CSS اضافه می کند
توصیه شده توسط گوگل و در توییتر نیز استفاده شده است [ 1 ].
🔗https://autoprefixer.github.io/

[ 1 ] https://t.me/important_node_modules/36

#️⃣#tool
🆔@IR_javascript
👍2
متد getBattery اطلاعاتی در مورد باتری سیستم ارائه می دهد که با برخی از event ها می‌توانید نظارت بیشتری بر وضعیت باتری داشته باشید.
navigator.getBattery()
.then(function(batteryManager) {

// Get current charge in percentages.
var level = batteryManager.level * 100;

})
.catch(function(e) {
console.error(e);
});


🔗https://tutorialzine.com/2016/08/working-with-the-javascript-battery-api

#️⃣#tip
🆔@IR_javascript
👍2
‏Oxlint به طور پیش‌فرض طراحی شده است تا کدهای اشتباه یا بی‌استفاده را بدون نیاز به هیچ پیکربندی‌ای را شناسایی کند که چیزی حدود 50 - 100 برابر سریعتر از ESLint است و با تعداد هسته‌ها CPU مقیاس می‌شود.
البته این محصول در حالت GA قرار دارد و در حال بررسی نقاط ضعف و باگ های احتمالی می باشد اما باز خورد خوبی از جامعه برنامه نویسی دریافت کرده به عنوان مثال ایوان یو (خالق ویو جی اس) [+لینک]

🔗https://oxc-project.github.io/docs/guide/usage/linter.html

#️⃣#npm_module
🆔@IR_javascript
در خروجی چه خواهد بود؟
Anonymous Quiz
44%
20, 10
26%
10, 20
7%
20, error
22%
error, 10
‌‏Lightning CSS — An extremely fast CSS parser, transformer, bundler, and minifier.

‏Lightning CSS بیش از 100 برابر سریعتر از ابزارهای مشابه مبتنی بر جاوا اسکریپت است.

‏Lightning CSS با استفاده از cssparser وselectors ایجاد شده که به زبان Rust نوشته شده است.

🔗https://lightningcss.dev/

#️⃣#npm_module
🆔@IR_javascript
This media is not supported in your browser
VIEW IN TELEGRAM
تابع min در css

یک یا چند مقدار را می گیرد که با کاما از هم جدا شده اند و کوچکترین آنها را برمی گرداند

#️⃣#tip #css
🆔@IR_javascript
1
متد groupBy در جاوا اسکریپت

شاید جای خالی این متد همیشه توی جاوااسکریپت حس میشد. با متد groupBy می‌تونیم اعضای یک آرایه رو بر اساس یک پراپرتی مشترک بین اعضا گروه‌بندی کنیم. نکته‌ای که groupBy داره اینه که برعکس متدهای بالا، این متد به‌صورت استاتیک و از آبجکت گلوبال Object در دسترس هست.

🔗https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/groupBy

🔗https://ditty.ir/posts/es14-javascript-features/nY8r5

#️⃣#tip
🆔@IR_javascript
👍1
شجره نامه زبان های برنامه نویسی

#️⃣#tip
🆔@IR_javascript
This media is not supported in your browser
VIEW IN TELEGRAM
کجا یک نقشه راه ایجاد کنیم: 10 سرویس برتر

خدماتی که برای ایجاد نقشه شغلی و موارد دیگر مناسب هستند.

🔗https://xmind.app/
🔗https://proglib.io/p/gde-sostavit-dorozhnuyu-kartu-top-10-servisov-2024-03-05

#️⃣#tool
🆔@IR_javascript
مدیریت Caps Lock در جاوا اسکریپت

به عقیده برخی Caps Lock بی فایده ترین کلید است؟ علاوه بر این، ممکن است آنرا در نامناسب ترین لحظه ها مثلاً هنگام وارد کردن رمز عبور فشار دهید و متوجه نشوید.
می توان قطعه کدی را به اپ اضافه کرد تا به کاربر در مورد فشار دادن Caps Lock هشدار دهد.

برای ردیابی اینکه آیا Caps Lock فعال است، از روش getModifierState استفاده می کنیم

document.querySelector('input[type=password]').addEventListener('keyup', function (keyboardEvent) {
const capsLockOn = keyboardEvent.getModifierState('CapsLock');
if (capsLockOn) {
// در مورد فشار دادن Caps Lock هشدار می دهید؟
}
});



#️⃣#tip
🆔@IR_javascript
👍1
کار با WebSockets

این کد نحوه برقراری اتصال WebSockets به سرور و ارسال و دریافت پیام‌ها را بصورت real time نشان می‌دهد. WebSocket ها به طور گسترده برای ایجاد برنامه های کاربردی وب تعاملی و real time استفاده می شوند.
const socket = new WebSocket('wss://example.com');
socket.onopen = () => {
console.log('اتصال برقرار شد');
socket.send('سلام سرور');
};

socket.onmessage = (event) => {
console.log('پیام دریافت شد:', event.data);
};
socket.onclose=() => {
console.log('اتصال بسته شد');
};

#️⃣#tip
🆔@IR_javascript
👍1
تبدیل گفتار فارسی به متن با جاوا اسکریپت
کد زیر را در مرورگر وارد کرده و صحبت کنید
const GetSpeech = () => {
console.log("clicked microphone");
const SpeechRecognition = window.SpeechRecognition || window.webkitSpeechRecognition;
let recognition = new SpeechRecognition();
recognition.lang = 'fa-IR'
recognition.continuous = true;
recognition.interimResults = true;
recognition.onstart = () => {
console.log("starting listening");
}
recognition.onspeechend = () => {
console.log("stopped listening");
recognition.stop();
}
recognition.onresult = (result) => {
for (var i = event.resultIndex; i < event.results.length; ++i) {
console.log(result.results[i][0].transcript);
if (event.results[i].isFinal) {
console.log(result.results[i][0].transcript);
}}}
recognition.start();
}
GetSpeech()

دمو در لینک زیر
🔗https://codepen.io/Aghaie/pen/EzgdEo
🔗https://developer.mozilla.org/en-US/docs/Web/API/SpeechRecognition/interimResults

#️⃣#tip
🆔@IR_javascript
👍1🥰1