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技术的区别!
