مشکل تعداد آرگومانها با تابع settimeout

phpweb

Active Member
من وقتی که از settimeout استفاده می کنم و فقط یک آرگومان به تابعی که توسط settimeout فراخوانی مشه مدیم، مشکلی پیش نمی یاد. کد زیر مشکلی نداره:
کد:
setTimeout("MyFun("'+myoption1+'")", 1000)
ولی وقتی چند آرگومان به تابع می دم کدها اجرا نمی شن. کد زیر اجرا نمی شه:
کد:
setTimeout("MyFun("'+myoption1+'","'+myoption2+'")", 1000)
 

eAmin

Well-Known Member
هر دو کد بالایی خطای syntax ی دارند، شما نتونستید بدرستی آرگومان ها رو داخل رشته قرار بدید.
سعی کنید از این به بعد هیچ وقت به اینصورت توابعی مثل setTimeout و setInterval رو مقدار دهی نکنید، بجاش از این روش استفاده کنید تا امکان وجود خطا به حداقل برسه.
کد:
window.setTimeout(function() {
	myFunction(arg1, arg2, arg3 /* & etc... */);
}, 1000);
 

phpweb

Active Member
هر دو کد بالایی خطای syntax ی دارند، شما نتونستید بدرستی آرگومان ها رو داخل رشته قرار بدید.
سعی کنید از این به بعد هیچ وقت به اینصورت توابعی مثل setTimeout و setInterval رو مقدار دهی نکنید، بجاش از این روش استفاده کنید تا امکان وجود خطا به حداقل برسه.
کد:
window.setTimeout(function() {
    myFunction(arg1, arg2, arg3 /* & etc... */);
}, 1000);
طبق منابع آموزشی جاوا اسکریپت باید بتونم از کد زیر استفاده کنم.
کد:
setTimeout(MyFun(myoption1,myoption2), 1000)
یعنی دابل کوتیشن و سینگل کوتیشن ها رو حذف کنم تا توی تبدیل آرگومان ها به رشته مشکلی پیش نیاد.

در مورد استفاده از این روش چه نظری دارید؟
 

جدیدترین ارسال ها

بالا