آموزش جاوا اسکریپت - کلمه کلیدی void
void کلمه کلیدی مهمی در جاوااسکریپت است که می تواند به عنوان یک اپراتور یوناری (unary operator) استفاده شود و قبل از عملوند تکی خود، که می تواند هر نوعی باشد، قرار می گیرد. این اپراتور یک عبارت را مشخص می کند که بدون بازگرداندن مقدار، باید ارزیابی شود.
نحو
نحو void می تواند یکی از دو حالت زیر باشد:
<head>
<script type = "text/javascript">
<!--
void func()
javascript:void func()
or:
void(func())
javascript:void(func())
//-->
</script>
</head>
مثال ۱
استفادهی رایجترین این اپراتور در URL جاوااسکریپت مشتری-سمت (client-side javascript) است که به شما امکان می دهد یک عبارت را برای اثرات جانبیاش ارزیابی کنید، بدون اینکه مرورگر مقدار عبارت ارزیابی شده را نمایش دهد.
در اینجا، عبارت alert ('هشدار!!!') ارزیابی میشود، اما به سند کنونی بارگزاری نمیشود −
<html>
<head>
<script type = "text/javascript">
<!--
//-->
</script>
</head>
<body>
<p>Click the following, This won't react at all...</p>
<a href = "javascript:void(alert('Warning!!!'))">Click me!</a>
</body>
</html>
مثال ۲
به مثال زیر نگاهی بیندازید. پیوند زیر هیچ کاری انجام نمیدهد زیرا عبارت "0" هیچ اثری در جاوااسکریپت ندارد. در اینجا، عبارت "0" ارزیابی می شود، اما به سند کنونی بارگزاری نمی شود.
<html>
<head>
<script type = "text/javascript">
<!--
//-->
</script>
</head>
<body>
<p>Click the following, This won't react at all...</p>
<a href = "javascript:void(0)">Click me!</a>
</body>
</html>
مثال ۳
استفاده دیگری از void، تولید مقدار undefined به صورت قصدی است، به شرح زیر.
<html>
<head>
<script type = "text/javascript">
<!--
function getValue() {
var a,b,c;
a = void ( b = 5, c = 7 );
document.write('a = ' + a + ' b = ' + b +' c = ' + c );
}
//-->
</script>
</head>
<body>
<p>Click the following to see the result:</p>
<form>
<input type = "button" value = "Click Me" onclick = "getValue();" />
</form>
</body>
</html>