电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

JavaScript之不可靠的undefined

瀏覽:2日期:2023-06-03 18:00:39

undefined在 JavaScript 中,假設我們想判斷一個是否是undefined,那么我們通常會這樣寫:

if(a === undefined){//code}

但是,JavaScript 中的undefined并不可靠,我們試著寫這樣一個函數:

function test(a) { var undefined = 1; console.log(undefined); // => 1 if(a===undefined) { // ... }}

可以看到,undefined被輕易地修改為了1,使得我們之后的對于undefined理解引起歧義。所以,在 JavaScript 中,把undefined直接解釋為 “未定義” 是有風險的,因為這個標識符可能被篡改。

在 ES5 之前,全局的undefined也是可以被修改的,而在 ES5 中,該標識符被設計為了只讀標識符, 假如你現在的瀏覽器不是太老,你可以在控制臺中輸入以下語句測試一下:

undefined = 1;console.log(undefined); // => undefined

現在我們能夠明確的,標識符undefined并不能真正反映 “未定義”,所以我們得通過其他手段獲得這一語義。幸好 JavaScript 還提供了void運算符,該運算符會對指定的表達式求值,并返回受信任的undefined:

void expression

最常見的用法是通過以下運算來獲得undefined,表達式為0時的運算開銷最小:

void 0;// orvoid(0);

所有需要獲得undefined地方,都通過void 0進行了替代

當然,獲取undefined還有另一種方式:看過jquery源碼的同學,應該知道里面的立即執行函數:

(function(window,undefined) { // ...})(window)

在這個函數中,我們沒有向其傳遞第二參數(形參名叫undefined),那么第二個參數的值就會被認為 “未定義”,因此,通過這種方式,在該函數的作用域中所有的undefined都為受信的undefined。

以上就是JavaScript之不可靠的undefined的詳細內容,更多關于JavaScript之不可靠的undefined的資料請關注好吧啦網其它相關文章!

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 凝胶成像系统(wb成像系统)百科-上海嘉鹏| 三氯异氰尿酸-二氯-三氯-二氯异氰尿酸钠-优氯净-强氯精-消毒片-济南中北_优氯净厂家 | 杭州用友|用友软件|用友财务软件|用友ERP系统--杭州协友软件官网 | 电镀电源整流器_高频电解电源_单脉双脉冲电源 - 东阳市旭东电子科技 | 净化车间装修_合肥厂房无尘室设计_合肥工厂洁净工程装修公司-安徽盛世和居装饰 | 希望影视-高清影视vip热播电影电视剧免费在线抢先看 | 今日热点_实时热点_奇闻异事_趣闻趣事_灵异事件 - 奇闻事件 | IP检测-检测您的IP质量| ◆大型吹塑加工|吹塑加工|吹塑代加工|吹塑加工厂|吹塑设备|滚塑加工|滚塑代加工-莱力奇塑业有限公司 | 彼得逊采泥器-定深式采泥器-电动土壤采样器-土壤样品风干机-常州索奥仪器制造有限公司 | 除尘器布袋骨架,除尘器滤袋,除尘器骨架,电磁脉冲阀膜片,卸灰阀,螺旋输送机-泊头市天润环保机械设备有限公司 | 对夹式止回阀_对夹式蝶形止回阀_对夹式软密封止回阀_超薄型止回阀_不锈钢底阀-温州上炬阀门科技有限公司 | 六自由度平台_六自由度运动平台_三自由度摇摆台—南京全控科技 | 生产加气砖设备厂家很多,杜甫机械加气砖设备价格公道 | 科研ELISA试剂盒,酶联免疫检测试剂盒,昆虫_植物ELISA酶免试剂盒-上海仁捷生物科技有限公司 | 低气压试验箱_高低温低气压试验箱_低气压实验箱 |林频试验设备品牌 | 外观设计_设备外观设计_外观设计公司_产品外观设计_机械设备外观设计_东莞工业设计公司-意品深蓝 | 工程管道/塑料管材/pvc排水管/ppr给水管/pe双壁波纹管等品牌管材批发厂家-河南洁尔康建材 | 烘干设备-热泵烘干机_广东雄贵能源设备有限公司 | 隧道风机_DWEX边墙风机_SDS射流风机-绍兴市上虞科瑞风机有限公司 | AGV无人叉车_激光叉车AGV_仓储AGV小车_AGV无人搬运车-南昌IKV机器人有限公司[官网] | 最新电影-好看的电视剧大全-朝夕电影网 | 上海电子秤厂家,电子秤厂家价格,上海吊秤厂家,吊秤供应价格-上海佳宜电子科技有限公司 | 网站建设,北京网站建设,北京网站建设公司,网站系统开发,北京网站制作公司,响应式网站,做网站公司,海淀做网站,朝阳做网站,昌平做网站,建站公司 | 颗粒机,颗粒机组,木屑颗粒机-济南劲能机械有限公司 | 重庆私家花园设计-别墅花园-庭院-景观设计-重庆彩木园林建设有限公司 | 船用锚链|专业锚链生产厂家|安徽亚太锚链制造有限公司 | SF6环境监测系统-接地环流在线监测装置-瑟恩实业 | 热处理炉-退火炉-回火炉设备厂家-丹阳市电炉厂有限公司 | 福建自考_福建自学考试网| 聚丙烯酰胺PAM-聚合氯化铝PAC-絮凝剂-河南博旭环保科技有限公司 巨野电机维修-水泵维修-巨野县飞宇机电维修有限公司 | 煤矿支护网片_矿用勾花菱形网_缝管式_管缝式锚杆-邯郸市永年区志涛工矿配件有限公司 | 三轴曲线机-端子插拔力试验机|华杰仪器 | 船老大板材_浙江船老大全屋定制_船老大官网 | 粤丰硕水性环氧地坪漆-防静电自流平厂家-环保地坪涂料代理 | 建筑工程资质合作-工程资质加盟分公司-建筑资质加盟 | 混合反应量热仪-高温高压量热仪-微机差热分析仪DTA|凯璞百科 | 工业胀紧套_万向节联轴器_链条-规格齐全-型号选购-非标订做-厂家批发价格-上海乙谛精密机械有限公司 | 康明斯发电机,上柴柴油发电机,玉柴柴油发电机组_海南重康电力官网 | 陕西自考报名_陕西自学考试网 | 登车桥动力单元-非标液压泵站-非标液压系统-深圳市三好科技有限公司 |