js高级面试题
2024-08-28 23:41:58
<script>
//1.
var foo = {
bar: function () {
return this.baz;
},
baz: 1
};
(function () {
return typeof arguments[0]();
})(foo.bar);
//foo.bar方法没有参数,typeof arguments[0]()为undefine
//2.
var f = (function f() { return "1"; }, function g() { return 2; })();
typeof f;
//f=2 为number类型
//3.
var i=(function () {
function f() { return 1; }
return f();
function f() { return 2; }
})();
//i=2
//4.
for (var i = 0; i < 5; i++) {
(function (i) {
setTimeout(function () {
console.log(i);
}, 1000)
})(i)
}
//5.
function f1() {
var n = 999;
nAdd = function () {
n += 1;
}
function f2() {
console.log(n);
}
return f2;
}
var result = f1();//返回为f2方法体
result();//执行f2方法 能访问到n 为999
nAdd();//执行nAdd方法 能访问到n 1000
result();//执行f2方法 能访问到n 为1000
</script>
最新文章
- Jmeter响应内容为文件
- 在 JQuery Mobile 中实现瀑布流图库布局
- BAT批量处理 命令
- LEETCODE —— Single Number
- C++ Low level performance optimize
- ccleaner注册码
- Android下得到APK包含信息
- [Javascript] JSON.parse API
- Android dp和sp的用法汇总
- 多线程的并发问题,lock用法
- Spring服务定制
- tkinter中text文本与scroll滚动条控件(五)
- mysql 表结构及基本操作
- vuejs2.0如何获取dom元素自定义属性值
- ZOJ-3537
- http方式访问svn
- oracle 之 连接查询
- bzoj1294 [SCOI2009]围豆豆
- get与post区别大揭秘
- 解决Alt+/不弹出提示的问题