بهترین ها همه در یک جا
let به صورت block scope است یعنی فقط توی همون بلاکی که توش هست مقدارش معتبر هست و var به صورت function scope یعنی به صورت سراسری در کل برنامه مقدارش قابل دسترسی یا تغییر است.
this به object فعلی اشاره میکند . object ای که روی آن قرار گرفته.
var yourObject = { name : "Hossein" , family : "Arbatan" , functionwithTHIS(){ console.log(this.name + " " + this.family) } } yourObject.functionwithTHIS();
درحالتی مثل زیر this چون درون خود object فراخوانی شده نه بیرون از آن (روی object پس از . فراخوانی نشده) This در واقع windows که بالاترین شی است را برمیگرداند.
var yourObject = { name : "hossein" , family : "Arbatan" , myFunc() { function myFunction() { console.log(this) } myFumction(); } } yourObject.myFunc();
var yourObject = { name : "hossein" , family : "Arbatan" , myFunc() { let myFumction = ()=> console.log(this); myFumction(); } } yourObject.myFunc();
از این طریق thisهای درون یک function به آن object اشاره خواهند کرد . فرض کنید myObject هم Object ای است که دارای name و family است.
function myFunc(){ console.log(this.name + " " + this.family); } myFunc.call(myObject );
function testEvent(){ console.log("hi"); } document.getElementById("myBtn").addEventListener("click" , testEvent())
document.addEventListener("click", function(){ alert("Hello World!"); });
document.addEventListener("click" ,()=> console.log("hello"))
let myNumbers = [10 , 20 , 30]; myNumbers.map(function(x){ return x*10; });
myNumbers.map( x => x*10 );
[100, 200, 300]
var name = "arbatan" console.log(`hello dear ${name}`)
برای redirect کردن در JS از کد زیر استفاده میشود . برای اینکه بعد
از یک زمان معینی این عمل انجام شود آن را درون setTimeout میگذاریم.
setTimeout(function () { window.location.href = "http://khoobchi.com"; }, 5000)
const javaScriptRelease = Date.parse('04 Dec 1995 00:12:00 GMT'); console.log(new Date()); // Expected output: Like Sun Sep 17 2023 11:57:31 GMT+0330 (Iran Standard Time) console.log(javaScriptRelease) // Expected output: 818035920000 console.log( new Date(javaScriptRelease)); // Expected output: Mon Dec 04 1995 03:42:00 GMT+0330 (Iran Standard Time) if(new Date() > javaScriptRelease){ console.log("ok") } // Expected output: "ok"
<a href="javascript: void(0)">I am a useless link</a>