Javascript作用域备忘

本文分享了JavaScript初学者常见的三个误区:正确判断变量是否为undefined的方法;理解JS中不存在块级作用域的特点;以及函数执行前的变量声明机制。通过这些知识点的学习,帮助读者更好地掌握JavaScript的基本概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

初涉 JS, 颇有些新鲜感。整理出几个心得

[b]1. [/b] undefined
当需要判断一个变量是否为 undefined 时,直接用

alert(om == undefined);

可能出错。因为 JS 如果引用未声明的变量,那么会出现JS错误,在上述例子中,如果 om 未曾声明,就会报 JS 错误。因此判断一个变量是 undefined,最好用这种方法

alert(typeof om == 'undefined');


[b]2. [/b] JS 中没有块作用域,在函数中声明的变量在整个函数中都可用(无论是在函数开头处声明还是末尾处声明),如

function() {
alert(om); // 显示 undefined
var om = 'abc';
alert(om); // 显示 abc
}


[b]3. [/b] JS 在函数执行前将整个函数的变量进行声明,无论这个变量的声明语句有没有机会执行,如

function () {
alert(om); // 显示 undefined
if (false) {
var om = 'abc'; // 此处声明没有机会执行
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值