javascript - 闭包以及函数

复制代码
 1 /**
 2  * 匿名函数
 3  */
 4 (function () {
 5     /**
 6      * 是否启用跟踪用户隐私
 7      * 
 8      * 启用:isPrivacys(true)
 9      * 不启用:isPrivacys(false)
10      * 
11      */
12     function isPrivacys(isPrivacy) {
13         isPrivacy ? (navigator.msDoNotTrack == "0" || window.doNotTrack == null || navigator.doNotTrack == "unspecified" || navigator.doNotTrack == null) : (navigator.msDoNotTrack || window.doNotTrack || navigator.doNotTrack == '1');
14     }
15 
16     // 以释放对象或函数以及变量来提供给其它使用
17     window.isPrivacys = isPrivacys;
18 })();
19 
20 
21 // 使用它
22 isPrivacys(true);
23 
24 
25 
26 /**
27  * 自执行函数(其实只要裸着就是自执行函数)
28  */
29 !function () {
30     // code....
31     console.log('一开始,我自己执行了!!!');
32 }();
33 
34 
35 
36 /**
37  * 声明式函数 - 运行期上文无法获取
38  * @param {number} a 
39  * @param {number} b 
40  */
41 var count = function (a, b) {
42     return a + b;
43 }
44 console.log(count(1, 2));
45 count(1, 2);
46 
47 
48 
49 
50 
51 /**
52  * 函数 - 运行期上下文皆可获取(global)
53  * @param {number} a 
54  * @param {number} b 
55  */
56 function countAdd(a, b) {
57     return a, b;
58 }
复制代码

 

posted @   Sunsin  阅读(137)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示