1.if ('m'
in window)
4.console.log(m);
1.let n = 10;
2.if (!('n'
in window))
5.console.log(n);
複製**
1.let n = 10,
2. m = 20;
3.~function (n, m) (m);
9.console.log(n, m);
複製**
1.let n = 10,
2. m = 20;
3.~function (n, m) (m);
9.console.log(n, m);
複製**
1.let ary = [12, 23, 34, 45];
2.(function (ary) )(ary);
8.console.log(ary);
複製**
1.let n = 10,
2. obj = ;
3.let fn = obj.fn = (function
() 11.})(obj.n);
12.fn(10);
13.obj.fn(10);
14.console.log(n, obj.n);
複製**
1.let a = ;
2.let b = a;
3.b.x = a = ;
4.console.log(a.x);
5.console.log(b.x);
複製**
1.function c1(name)
4.function c2(name)
7.function c3(name)
10.c1.prototype.name = 'tom';
11.c2.prototype.name = 'tom';
12.c3.prototype.name = 'tom';
13.alert(new c1().name + new c2().name + new c3().name);
複製**
忽略報錯對後面**的影響
1.let m = 20;
2.let fn = function (n, m)
7.};
8.fn.prototype.bb = function
() ;
11.let f1 = new fn(10, 20);
12.fn.prototype =
16.};
17.let f2 = new fn(30);
18.console.log(f1.constructor === f2.constructor);
19.f1.aa();
20.f1.bb();
21.f1.cc();
22.f2.bb();
23.f2.cc();
24.f2.__proto__.cc();
複製**
console.log(a);
var a=12;
function
fn()
fn();
console.log(a);
輸出的三次分別是多少
a、undefined 12 13 b、undefined undefined 12
c、undefined undefined 13 d、有程式報錯
複製**
2、console.log(a);
var a=12;
function
fn()
fn();
console.log(a);
a、undefined 12 13 b、undefined undefined 12
c、undefined undefined 13 d、有程式報錯
複製**
3、console.log(a);
a=12;
function
fn()
fn();
console.log(a); 輸出的三次分別是多少
a、undefined 12 13 b、undefined undefined 12
c、undefined undefined 13 d、有程式報錯
複製**
4、var foo=1;
function
bar()
console.log(foo);
}bar(); 輸出的結果是多少
a、1 b、10 c、undefined d、報錯
複製**
5、var n=0;
functiona()
b();
return b;
}var c=a();
c();
alert(n);
彈出三次的結果分別是什麼?
a、1 1 1 b、11 11 0 c、11 12 0 d、11 12 12
複製**
6、var a=10,b=11,c=12;
function
test(a)
test(10);
alert(a); alert(b); alert(c); 彈出的三個值分別是多少?
a、1 11 3 b、10 11 12 c、1 2 3 d、10 11 3
複製**
if(!("a"
in window))
alert(a);
彈出的a的值是?
a、1 b、undefined c、報錯 d、以上答案都不對
複製**
var a=4;
function b(x,y,a)
a=b(1,2,3); alert(a); 三次彈出的結果是
a、3 3 4 b、3 10 4 c、3 10 10 d、3 10 undefined
複製**
var foo='hello';
(function(foo))(foo);
console.log(foo); 三次分別輸出什麼?
a、hello hello hello b、undefined world hello c、hello world world d、以上答案都不正確
複製**
var a=9;
function
fn()
}var f=fn()
var m=f(5);alert(m);
var n=fn()(5);alert(n);
var x=f(5);alert(x);
alert(a); 彈出的四次結果?
a、6 6 7 2 b、5 6 7 3 c、5 5 6 3 d、以上答案都不正確
複製**
變數提公升 作用域
console.log a undefined console.log window.a undefined console.log a in window true 在變數提公升階段,在全域性作用域中宣告了乙個變數a,此時就已經把a當做屬性賦值給window了,只不過此時還沒有給a賦值,預設值un...
作用域與變數提公升
js中變數的作用域有全域性作用域和區域性作用域兩種,作用域簡單來講就是變數與函式的可訪問範圍。宣告提前是在js預編譯是就進行了,變數提公升知識提公升變數的宣告,並不會吧值也提上來。例1 var name one function test var name one function test 解析 ...
變數提公升以及作用域
1 console.log v1 2var v1 100 3function foo 8foo 9console.log v1 10 undefined undefined 200 100 一共有四次列印的動作,分別來看 第一次列印,由於存在變數提公升,第二句中的var v1 100會被提到頂部進行...