کافه برنامه نویسان | 𝗣𝗿𝗼𝗴𝗿𝗮𝗺𝗲𝗿s 𝗖𝗮𝗳𝗲
2.79K subscribers
1.16K photos
272 videos
31 files
1.2K links
👈 اینجا جایی است که یاد می‌گیریم و ایده‌هایمان را به واقعیت تبدیل می‌کنیم و در نهایت با هم رشد می‌کنیم

💬 Group : @IRdeveloperchat
تبادل / تبلیغات : @ProgramersCafeSup 🫴


♂️ مالک : @Ali_Rohany ♂️
Download Telegram
دید که وقتی توی یه سایتی روی متنی کلیک میکنید متنه تو کلیپ برورد شما کپی میشه کدش اینه 👇👇👇

<span class="sadowpaswordFile" onclick="copyToClipboard()">کپی رمز</span>


function copyToClipboard() { 
  const textToCopy = 'متن شما اینجا';
  navigator.clipboard.writeText(textToCopy).then(() => {
      alert('متن کپی شد!');
  }).catch(err => {
      console.error('خطا در کپی:', err);
  });
}


#javascript #html


𝗖𝗵𝗮𝗻𝗻𝗲𝗹 • @Programers_Cafe

𝗚𝗿𝗼𝘂𝗽 • @IRdeveloperchat
9🔥5👨‍💻4
به جای اینکه از  alert  خشک بی روح جاوا اسکریپت استفاده کنی🤮
بیا از کتابخانه sweetAler2 استفاده کن🤩

♻️توضیح استفاده ازش رو هم تو خوده سایتش داده لازم نیست نگرانش باشید

#javascript #programming


𝗖𝗵𝗮𝗻𝗻𝗲𝗹 • @Programers_Cafe

𝗚𝗿𝗼𝘂𝗽 • @IRdeveloperchat
👨‍💻86
خروجی کد زیر چیست؟؟


const weakMap = new WeakMap();
const array = [1, 2, 3];
const obj = {};

weakMap.set(obj, array);

const result = weakMap.get(obj).reduce((acc, val) => acc + val);

console.log(result);


🔥این بار جواب رو تو کامنت ها بگید بعدا در مورد جوابش توضیح میدم

#javascript #challenge

#Ah_sear

Channel • @Programers_Cafe
Group • @IRdeveloperchat
👨‍💻6
🔥توی این پست می‌خوام switch statement رو در JavaScript کامل تشریح دهم

🌀اswitch یه ساختار کنترلیه که بهت این امکان رو می‌ده که بر اساس مقدار یک متغیر، چندین حالت مختلف رو بررسی کنی. این خیلی به درد می‌خوره وقتی که بخوایم چندین شرط رو چک کنیم و هر کدوم یه نتیجه متفاوت داشته باشه.

▎ساختار کلی:

switch (expression) {
case value1:
// کدی که باید اجرا بشه اگر expression برابر با value1 باشه
break;
case value2:
// کدی که باید اجرا بشه اگر expression برابر با value2 باشه
break;
// می‌تونی بیشتر از این هم داشته باشی
default:
// کدی که باید اجرا بشه اگر هیچکدوم از موارد بالا درست نبود
}

▎توضیحات:

1⃣expression:
این همون متغیریه که می‌خوایم بررسی کنیم.
2⃣case:
هر case یه مقدار ممکن رو بررسی می‌کنه. اگر expression با یکی از این مقادیر برابر بود، کدهای اون case اجرا می‌شن.
3⃣break:
بعد از هر case معمولاً از break استفاده می‌کنیم تا از ادامه اجرای بقیه caseها جلوگیری کنیم. اگر break نباشه، جاوااسکریپت به اجرای بقیه caseها ادامه می‌ده تا به یه break یا default برسه.
4⃣default:
این بخش اختیاریه و زمانی استفاده میشه که هیچکدوم از caseها درست نباشن.

▎مثال:

فرض کن می‌خوایم روز هفته رو بررسی کنیم:
let day = 3;

switch (day) {
case 1:
console.log("شنبه");
break;
case 2:
console.log("یکشنبه");
break;
case 3:
console.log("دوشنبه");
break;
case 4:
console.log("سه‌شنبه");
break;
default:
console.log("روز نامشخص");
}

در این مثال، چون day برابر با ۳ هست، خروجی میشه "دوشنبه".

🔰اSwitch معمولاً برای مقادیر ثابت مثل عدد یا رشته استفاده میشه و به خاطر خوانایی بیشترش نسبت به چندین if-else، خیلی محبوبه.

#javascript #switch #statement

Channel • @Programers_Cafe
Group •@IRdeveloperchat
5👨‍💻3
خروجی کد زیر چیست؟؟

let funcs = [];

for (var i = 0; i < 3; i++) {
funcs.push(() => i);
}

console.log(funcs[0]());
console.log(funcs[1]());
console.log(funcs[2]());

#javascript #challenge

Channel • @Programers_Cafe
Group • @IRdeveloperchat
👨‍💻7
خروجی کد زیر چیست ؟

const animal = {
sound: "Generic sound",
makeSound() {
return this.sound;
}
};

const dog = Object.freeze(Object.create(animal));
dog.sound = "Bark";

const result = dog.makeSound();

console.log(result);

#javascript #challenge

Channel • @Programers_Cafe
Group • @IRdeveloperchat
👨‍💻6
سرعت زبان های برنامه نویسی👨‍💻

❗️دوستان وقتی میگیم یه زبان سطح پایینه منظور این نیست که زبان ضعیفی هست


#programming #javascript  #Python

𝗖𝗵𝗮𝗻𝗻𝗲𝗹 • @Programers_Cafe

𝗚𝗿𝗼𝘂𝗽 • @IRdeveloperchat
👨‍💻94
کدوم حوزه رو انتخاب میکنید ؟🧑‍💻


#programming #javascript  #Python

𝗖𝗵𝗮𝗻𝗻𝗲𝗹 • @Programers_Cafe

𝗚𝗿𝗼𝘂𝗽 • @IRdeveloperchat
👨‍💻72
خروجی کد زیر چیست؟

function* generatorFunction() {
yield 1;
yield* function* () {
yield 2;
yield 3;
}();
yield 4;
}

const gen = generatorFunction();
console.log(gen.next().value);
console.log(gen.next().value);
console.log(gen.next().value);
console.log(gen.next().value);
console.log(gen.next().value);

#javascript

#Ah_sear

Channel • @Programers_Cafe
Group • @IRdeveloperchat
👨‍💻5
حتما شنیدید که میگن جاوااسکریپت تک‌ رشته ای (Single-threaded) است. یعنی چی؟

🌀 یعنی جاوااسکریپت فقط می‌تونه یک کار رو در یک زمان انجام بده. مثل این می‌مونه که یه نفر باشه که فقط یه کار رو می‌تونه انجام بده و باید کارها رو یکی یکی انجام بده.

📝 اما یه نکته جالب اینه که جاوااسکریپت با استفاده از چیزی به نام Event Loop (حلقه رویداد) می‌تونه به نظر برسه که همزمان چند کار رو انجام می‌ده.

🧐 مثلاً فرض کن داری یه برنامه می‌نویسی که همزمان باید یه تایمر رو نشون بده و یه درخواست به سرور بفرسته. جاوااسکریپت این کار رو با استفاده از صف وظایف (Task Queue) و حلقه رویداد مدیریت می‌کنه.

به زبان ساده، جاوااسکریپت کارها رو توی صف می‌ذاره و یکی یکی انجامشون می‌ده، ولی چون خیلی سریع این کار رو می‌کنه، به نظر می‌رسه که همزمان داره چند کار رو انجام می‌ده.

#Vs_Code #JavaScript

𝗖𝗵𝗮𝗻𝗻𝗲𝗹 • @Programers_Cafe

𝗚𝗿𝗼𝘂𝗽 • @IRdeveloperchat
11👨‍💻32😁1
قیمت ها رو مرتب سازی کنید و اعداد رو از انگلیسی  به فارسی تبدیل کنید

const formatPrice = (price) => {
    const priceWithCommas = price.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',');
 
    const persianNumbers = priceWithCommas.replace(/\d/g, (d) => '۰۱۲۳۴۵۶۷۸۹'[d]);
 
    return persianNumbers;
};


#programming #javascript 

𝗖𝗵𝗮𝗻𝗻𝗲𝗹 • @Programers_Cafe

𝗚𝗿𝗼𝘂𝗽 • @IRdeveloperchat
👨‍💻9🔥2
🔥میخوام یه چندتا معما بگم که در مورد ارور ها اند هر کی که می‌تونه جواب بده

مثال:
🌀من عددی هستم که وقتی سعی می‌کنی به من یک رشته بچسبانی، بهت می‌گویم "این کار ممکن نیست!" من کی هستم؟

شما میگی این ارور TypeError است به همین صورت



🔰من همیشه محدودیت دارم. وقتی سعی کنی چیزی را خارج از حد مجاز تعریف کنی، بهت می‌گویم "این ممکن نیست!" من کی هستم؟

🔰من در دل موتور جاوا اسکریپت زندگی می‌کنم. وقتی همه چیز به هم بریزد و حافظه کم بیاد، بهت می‌گویم "دیگه نمی‌توانم ادامه بدهم!" من کی هستم؟

🔰من در دنیای وب زندگی می‌کنم و وقتی ارتباطات قطع شود، بهت می‌گویم "هیچ چیزی برای بارگذاری وجود ندارد!" من کی هستم؟

🔰من قوانین خاصی دارم. وقتی سعی کنی از من بخواهی که کدی را اجرا کنم و این کد نادرست باشد، بهت می‌گویم "این کار درست نیست!" من کی هستم؟

🔰 من عاشق آدرس‌ها هستم، اما وقتی آدرس اشتباهی بدی، بهت می‌گویم "این آدرس وجود ندارد!" من کی هستم؟

🔰 من همیشه در جملات اشتباه می‌کنم. وقتی فراموش می‌کنی که یک پرانتز ببندی، می‌آیم و می‌گویم "این درست نیست!" من کی هستم؟

#web #javascript #php

#Ah_sear
#معما
Channel • @Programers_Cafe
Group • @IRdeveloperchat
🔥5👨‍💻2
جاوا اسکریپت

برای اینکه ما به تونیم به تعداد ارایه های یک شیع دیگه تعداد خونه برای یه ارایه دیگه داشته باشیم باید در جاوا اسکریپت اینکارو انجام بدیم

let values = Array.from(نام ارایه ).map(()=> "")


کاربردش میتونه تو جاهایی باشه که ما به تعداد اینپوت هامون خونه در یه ارایه نیاز داریم

#programming #javascript 

𝗖𝗵𝗮𝗻𝗻𝗲𝗹 • @Programers_Cafe

𝗚𝗿𝗼𝘂𝗽 • @IRdeveloperchat
🔥10👨‍💻31
کتابخانه React Query  یک ابزار قدرتمند برای مدیریت وضعیت و داده‌ها در برنامه‌های React است. این کتابخانه به توسعه‌دهندگان کمک می‌کند تا داده‌ها را از سرور دریافت، کش، و به‌روزرسانی کنند بدون اینکه نیاز به نوشتن کدهای پیچیده و دستی باشد.

با استفاده از React Query، می‌توانید به راحتی درخواست‌های API را مدیریت کنید، داده‌ها را به صورت خودکار کش کنید، و تغییرات را در زمان واقعی (Real-Time) اعمال کنید. این کتابخانه همچنین امکاناتی مانند بازفراخوانی خودکار داده‌ها (Auto Refetch)، مدیریت خطاها، و نمایش وضعیت‌های مختلف (مانند در حال بارگذاری، موفقیت، یا خطا) را فراهم می‌کند.

#programming #javascript

Chanel  |  Group
👍18
⚡️ چرا جاوااسکریپت ساخته شد و چه مشکلی رو حل کرد؟

📅 سال ۱۹۹۵، یک مهندس به نام Brendan Eich توی شرکت Netscape فقط در ۱۰ روز زبانی طراحی کرد که بعدها شد JavaScript!

اون موقع وب‌سایت‌ها فقط متن و عکس بودن؛ هیچ تعاملی وجود نداشت.

مثلاً اگر کاربر یک فرم پر می‌کرد و اشتباه می‌نوشت، باید کل صفحه دوباره بارگذاری می‌شد.


این یه تجربه خیلی بد برای کاربر بود!

🌐 مشکل اصلی چی بود؟

وب ایستا بود، کاربر نمی‌تونست با صفحه تعامل واقعی داشته باشه.

برندان می‌خواست زبانی بسازه که:

سبک و ساده باشه،

روی مرورگر اجرا بشه،

بتونه صفحه رو زنده و پویا کنه.



🎯 مشکلاتی که جاوااسکریپت حل کرد:

💡 ایجاد تعامل در وب
از اعتبارسنجی فرم‌ها گرفته تا نمایش داینامیک محتوا بدون رفرش.

⚙️ سادگی یادگیری
جاوااسکریپت از همون اول با ساختاری ساده ارائه شد تا برنامه‌نویس‌ها سریع بتونن واردش بشن.

🚀 اجرای مستقیم در مرورگر
نیازی به نصب یا تنظیمات پیچیده نبود؛ فقط مرورگر کافی بود.

🌍 نتیجه:
جاوااسکریپت از یک زبان کوچیک برای مرورگرها، تبدیل شد به زبانی همه‌کاره.

👩🏻‍💻امروز باهاش میشه:

وب‌سایت‌های مدرن ساخت (React, Vue, Angular)

اپلیکیشن موبایل (React Native)

سرور (Node.js)

حتی اپلیکیشن دسکتاپ!

💭 به نظرت اگه جاوااسکریپت ساخته نمی‌شد، الان دنیای وب چه شکلی بود؟

#JavaScript #fact

Channel | Group
11👍3