نمایش نتایج 1 تا 7 از 7

نام تاپیک: خروجی توابع جاوا اسکریپت (توابع تودرتو)

  1. #1
    کاربر تازه وارد آواتار abpsoft
    تاریخ عضویت
    اسفند 1388
    محل زندگی
    هرجا کامپیوتر و اینترنت باشه
    سن
    32
    پست
    30

    Question خروجی توابع جاوا اسکریپت (توابع تودرتو)

    سلام به همه دوستان عزیز
    من یه سوال در مورد جاوااسکریپت دارم.

    من یه قطعه کد جاوا اسکریپت دارم که یه تابع تعریف کردم.
    داخل اون تابع، یه تابع دیگه تعریف کردم. (تابع تودرتو)

    حالا من مقداری رو به تابع اصلی (والد) میدم. در وسطهای کد، تابع دوم تعریف میشه و متن دریافتی تابع اول رو بررسی می‌کنه. حالا اگر شرط درست بود، می‌خوام که مقداری رو برگردونه. البته نمی خوام توسط تابع دومی (فرزند) برگشت داده بشه.
    بلکه می‌خوام که مقدار بر گشتی توسط تابع والد برگشت داده بشه و کد هم تموم بشه.

    حالا اگر کسی می‌تونه کمکم کنه، «یاعلی». ممنون میشم
    آخرین ویرایش به وسیله abpsoft : شنبه 14 خرداد 1390 در 18:08 عصر دلیل: تصحیح




  2. #2

    نقل قول: خروجی توابع جاوا اسکریپت (توابع تودرتو)

    اگه کدتو میزاشتی خوب میشد ...من دقیقا نمیدونم به چه روشی شما نوشتی کدتو ... به چند حالت میشه ...
            function funcParent(param) {
    this.value = param;
    function funcChild() {
    var a = this.value + 10
    return a;
    }
    return funcChild();
    }


            function funcParent(param) {
    this.value = param;
    var funcChild = function () {
    var a = this.value + 10
    return a;
    }
    return funcChild();
    }

  3. #3

    نقل قول: خروجی توابع جاوا اسکریپت (توابع تودرتو)

    توجه داشته باشین که فانکش های تو در تو در واقع پیاده سازی ساختار OOP در js هستند ...
            var Myclass = function (params) {
    var privateVar = 10;
    this.publicVar = 20;

    function privateFunc() {
    privateVar = params + 10;
    }
    this.publicFunc = function () {
    this.publicVar = params + 10;
    return this.publicVar;
    }
    }


    var obj = new Myclass(20);
    var a = obj.publicVar;
    var b = obj.publicFunc();

  4. #4
    کاربر تازه وارد آواتار abpsoft
    تاریخ عضویت
    اسفند 1388
    محل زندگی
    هرجا کامپیوتر و اینترنت باشه
    سن
    32
    پست
    30

    نقل قول: خروجی توابع جاوا اسکریپت (توابع تودرتو)

    سلام و تشکر از اینکه پاسخ دادین
    فرض کنین که کد من مثل کد زیر است:
    function funcParent(param) {
    var funcChild = function () {
    if(param=="return")
    return "OK";
    else
    document.getElementById('show_here').innerHTML='Ex : Welcome To MySite';
    }
    }

    یعنی من میخوام که وقتی تابع funcParent فراخوانی میشه، توسط تابع funcChild بررسی بشه. وقتی که شرط بررسی شد، یا مقداری برگردونه یا مقداری رو درون یه تگی با آیدی show_here نشون بده.
    یعنی من می خوام که مثلاً OK توسط تابع funcParent برگشت داده بشه.

    ممنونم

  5. #5

    نقل قول: خروجی توابع جاوا اسکریپت (توابع تودرتو)

    با اجرا شدن funcParent , متد funcChild اجرا نمیشه ... کافیه که به آخر funcParent یه return funcChild(); اضافه کنین ...
    function funcParent(param) {
    var funcChild = function () {
    if (param == "return")
    return "OK";
    else
    document.getElementById('show_here').innerHTML = 'Ex : Welcome To MySite';
    }
    return funcChild();//<------------------------------
    }

  6. #6
    کاربر تازه وارد آواتار abpsoft
    تاریخ عضویت
    اسفند 1388
    محل زندگی
    هرجا کامپیوتر و اینترنت باشه
    سن
    32
    پست
    30

    نقل قول: خروجی توابع جاوا اسکریپت (توابع تودرتو)

    من کدی که نوشتم رو بهتون نشون می دم. من می خوام که از آژاکس برای ارسال اطلاعات استفاده کنم. ارسال اطلاعات و دریافت رو به خوبی انجام میده.
    کد من به این صورت کار می کنه که توسط تابع get_username من دستوراتی رو ارسال می کنم.
    در مقدار ورودی تابع می خوام اگر متن return وارد شد، مقدار رو توسط تابع برگردونه و اگر چیزی جز return بود، فرض کند که تگی با آیدی متن ورودی در صفحه وجود دارد و مقدار برگشتی رو درون اون نشون بده.
    بی زحمت اگر مشکلی نیست، خودتون تست کنین و بهم بگید.
    ممنونم
    function get_username(return_show)
    {
    var oXmlHttp = CreateXMLHttp();
    oXmlHttp.open("GET", "process.php?id=1",true);
    oXmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    oXmlHttp.onreadystatechange = function ()
    {
    if (oXmlHttp.readyState == 4)
    {
    if (oXmlHttp.status == 200)
    {
    if(return_show=='return')
    {
    return oXmlHttp.responseText;
    }
    else
    document.getElementById(return_show).innerHTML=(oX mlHttp.responseText);
    }
    else
    {
    document.getElementById(return_show).innerHTML=("A jax Error " + oXmlHttp.statusText);
    }
    }
    };
    oXmlHttp.setRequestHeader("Accept-charset","utf-8");
    oXmlHttp.send(sBody);
    }

  7. #7

    نقل قول: خروجی توابع جاوا اسکریپت (توابع تودرتو)

    نقل قول نوشته شده توسط exlord مشاهده تاپیک
    اگه کدتو میزاشتی خوب میشد ...من دقیقا نمیدونم به چه روشی شما نوشتی کدتو ... به چند حالت میشه ...
    توجه نمیکنی به این مسائل و وقت هردومونو تلف میکنی ...
    این function داخلی یه EventHandler ه و بهد از اینکه readyState عوض شد اجرا میشه ... یه function معمولی نیست که بشه ازش چیزی return کرد ...

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •