作用域,變數提公升,作用域是否銷毀方面的題

2021-09-11 14:29:52 字數 3947 閱讀 4243

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會被提到頂部進行...