前端之家收集整理的这篇文章主要介绍了
JavaScript匿名函数表达式与IIFE,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
遇到一些在表达式中使用IIFE而不仅仅是普通
函数的
代码.
var custom_type = (function() {
return $('#myDiv').attr('custom_type');
})();
通常我会写这样的东西:
var custom_type = function() {
return $('#myDiv').attr('custom_type');
};
IIFE的原因是什么?我唯一能想到的是,IIFE可能只在开始时分配一次custom_type变量,而第二次可能会在每次引用变量时继续检查更新的类型.
在这个例子中,您可以完全省去该
功能,只需:
var custom_type = $('#myDiv').attr('custom_type');
但是一般情况下,您可以使用IIFE进行更复杂的“即时”变量赋值计算 – 如果我需要迭代某些东西,我喜欢使用它们,所以我可以在不污染当前范围的情况下使用它.
但是,在第二个示例中,结果完全不同 – 您需要调用函数custom_type()来获取当前值,而第一段代码将获得其值一次,变量将保存该值.
原文链接:https://www.f2er.com/js/150934.html