شهرام نویدی
1 سال پیش توسط شهرام نویدی مطرح شد
1 پاسخ

symbol ها در جاوا اسکریپت

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


ثبت پرسش جدید
مهدی نظری
تخصص : توسعه دهنده Front End
@mahdi.nazari 1 سال پیش آپدیت شد
1

سلام دوست من 🖐
امیدوارم حالت خوب و عالی باشی✨

علامتها (Symbols) در برنامه نویسی معمولاً به مفاهیم مختلفی ارتباط دارن و در زبانها و فریمورک‌های مختلف ممکن است کاربردهای مختلفی داشته باشن خب ؟ در زیر چند کاربرد اصلی علامتها در زمینه‌های مختلف برنامه‌نویسی را توضیح میدم بهت:

  1. زبان برنامه‌نویسی Ruby:
    توی Ruby، علامت‌ها به عنوان یک نوع داده بسیار کاربردی استفاده می‌شن. یک علامت به شکل :symbol_name تعریف میشن و به عنوان یک ثابت (constant) برای نامگذاری کلیدهای هش‌ها (hash keys) و دیگر مقادیر استفاده میشن.

    person = {
    :name => "John",
    :age => 30
    }
  2. زبان برنامه‌نویسی JavaScript:
    در JavaScript، علامتها به نام "علامت‌های سمی‌کل" (symbols) وارد شدن. این علامتها به عنوان کلیدهای منحصر به فرد برای ویژگی‌های شیء (object) استفاده می‌شوند و جلوی تداخل نامگذاری با دیگر key ها رو میگیره .

    const symbol1 = Symbol("description");
    const symbol2 = Symbol("description");
  3. زبان برنامه‌نویسی Ruby on Rails:
    در فریمورک Ruby on Rails، علامت‌ها معمولاً برای تعریف متغیرهای محلی (local variables) در قالبها (views) استفاده میشن. این کاربرد به کنترل و انتقال داده‌ها از کنترلر به ویو کمک می‌کنه.

    # در کنترلر:
    @user_name = "John"
    
    # در ویو:
    <p><%= @user_name %></p>
  4. زبانهای دیگر:
    در زبانهای برنامه‌نویسی دیگه همچون Lisp و Clojure، علامتها به عنوان ساختار داده‌ای برای نمایش کلمات یا عبارات مورد استفاده قرار می‌گیرن . این زبون ها از علامتها برای تعریف سمبلها و انجام عملیات مرتبط با آنها استفاده می‌کنند.

علامتها برای مواردی که نیاز به کلید‌های یکتا و ثابت دارید مفیدند. به عنوان مثال، در Ruby، شما میتونی از علامتها به عنوان کلیدها در یک هش (hash) استفاده کنی تا از تداخل نامگذاری جلوگیری کنی. همچنین، در JavaScript، علامتها برای تعریف کلیدهای منحصر به فرد در اشیاء مفیدن و از اشتباه در تداخل با کی های دیگه جلوگیری میکنن.


علامت‌های سمی‌کل (Symbols) در JavaScript عمدتاً برای دو مورد کاربردی مهم مورداستفاده قرار میگیره

  1. کلیدهای منحصر به فرد در اشیاء (Objects): وقتی شما یک شیء (object) ایجاد می‌کنی و میخوای کلیدهای آن منحصر به فرد باشن و تداخل با کلیدهای دیگر در اشیاء دیگر رخ نده، می‌تونی از علامتهای سمی‌کل استفاده کنی. این کلیدها به صورت یکتا تولید میشن و دیگر اشیاء نمی‌توانند کلید مشابهی داشته باشن. این ویژگی به تداخل نامگذاری کلیدها جلوگیری می‌کنه.

    مثال:

    const uniqueKey = Symbol();
    const person = {
     name: "John",
    };
    
    console.log(person.name); // "John"
    console.log(person[uniqueKey]); // "uniqueValue"
  2. استفاده در API‌ها و کتابخانه‌ها: علامت‌های سمی‌کل به کتابخانه‌ها و API‌ها کمک می‌کنه تا مقادیر یکتای خود را به کاربران ارائه بدن . بدون اینکه کاربران به راحتی بتوانند مقادیر علامت را تغییر دهند یا مقادیر مشابهی ایجاد کنن.

    مثال:

    const colors = {
     RED: Symbol("red"),
     GREEN: Symbol("green"),
     BLUE: Symbol("blue")
    };
    
    function setColor(color) {
     // اگر کلید معتبر باشد، عملیات رنگ‌گذاری انجام می‌شود
     if (color === colors.RED || color === colors.GREEN || color === colors.BLUE) {
       // انجام عملیات رنگ‌گذاری
     } else {
       console.log("رنگ معتبر نیست!");
     }
    }
    
    setColor(colors.RED); // رنگ‌گذاری انجام می‌شود
    setColor(Symbol("red")); // پیام خطا: "رنگ معتبر نیست!"

عموماً علامت‌های سمی‌کل برای استفاده در مواردی که نیاز به تضمین یکتایی و اعتبار اطلاعات دارید، مفید هستن

امیدوارم پاسخم بهت کمک کرده باشه ❤️
موفق و پیروز باشی 🤘🌹


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام