一般認為:嚴格模式下this不允許指向全局對象。 如:http://www.ruanyifeng.com/blog/2013/01/javascript_strict_mode.html 需要說明的是:本身指向全局的this是沒有問題的。 示例代碼: 控制台輸出為window對象(全局對象): 嚴格 ...
一般認為:嚴格模式下this不允許指向全局對象。
如:http://www.ruanyifeng.com/blog/2013/01/javascript_strict_mode.html
需要說明的是:本身指向全局的this是沒有問題的。
示例代碼:
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8" />
<title>嚴格模式下this指向</title>
</head>
<body>
<script type="text/javascript">
'use strict';
console.log(this);
</script>
</body>
</html>
控制台輸出為window對象(全局對象):
嚴格模式下this不允許指向全局對象是指在函數內部,如下示例代碼:
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8" />
<title>嚴格模式下this指向</title>
</head>
<body>
<script type="text/javascript">
'use strict';
function F() {
this.a = 1; //這種指向全局的this不對
};
F();
</script>
</body>
</html>
控制台輸出報錯: