js 题目 —— console.log()
1. 函数、变量 作用域
(1)
Foo() function Foo () { console.log(this.getName()) } var getName = function () { console.log(4) } Foo() function getName () { console.log(5) } Foo()
(2)
Foo() function Foo () { getName = function () { console.log(1) } console.log(this.getName()) } var getName = function () { console.log(4) } Foo() function getName () { console.log(5) } Foo()
(3)
function Foo () { getName = function () { console.log(1) } return this } Foo.getName = function () { console.log(2) } new Foo.getName()
(4)
function Foo () { getName = function () { console.log(1) } return this } Foo.getName = function () { console.log(2) } Foo.prototype.getName = function () { console.log(3) } var getName = function () { console.log(4) } function getName () { console.log(5) } Foo.getName() getName() Foo().getName() getName() new Foo.getName() new Foo().getName() new new Foo().getName()
(5)
function test() { console.log(1, this) return function() { console.log(2, this) return function () { console.log(3, this) } }; }; document.querySelector("input").addEventListener(input, test()());
(6)
for (var i = 0; i <10; i++) { setTimeout(function() { console.log(i); }, 0); } for (let i = 0; i <10; i++) { setTimeout(function() { console.log(i); }, 0); }
数组方法: 添加的都返回长度,删除的都返回删除的元素。
slice VS splice:
【答案】:
1.
(1) 5 4 4
(2) 1 1 1
(3) 2
(4) 2 4 1 1 2 3 3
(5) 页面初始化 this-> window window. (input输入值后 this-> input)
(6) 10 个 10; 0 1 2 3 4 5 6 7 8 9
下一篇:
一文读懂前端与HTML5技术的区别!