国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

JavaScript在全局對象中聲明變量,會成為一個(gè)全局對象的同名屬性而在函數(shù)中聲明變量則不會,為什么?

瀏覽:116日期:2023-05-12 08:54:20

問題描述

JavaScript中,在全局聲明全局變量后,會成為全局對象的一個(gè)同名屬性。但在函數(shù)中聲明局部變量后,卻不會成為函數(shù)(對象)的屬性,而是要使用“函數(shù)名.屬性名”才能聲明,請問是什么原因?

問題解答

回答1:

可以這樣理解:

在函數(shù)內(nèi)部聲明的變量屬于函數(shù)執(zhí)行上下文對象,而不是函數(shù)對象全局環(huán)境下聲明的變量屬于全局執(zhí)行上下文對象,這個(gè)上下文對象就是全局環(huán)境對象

回答2:

哪有什么原因,規(guī)定就是這樣的。

回答3:

歷史遺留問題,建議使用嚴(yán)格模式消除迷惑。

’use strict’;var v = 2;console.log(window.v); // undefined回答4:

如果你是說這樣`function test(){

var a = 1; // 你說的a是test的屬性。 this.a = 1;// 這才是函數(shù)的屬性,因?yàn)樵贘S里,“萬物”皆對象(可能夸張了。) //如果,還不明白,請自覺翻閱,“神奇的this”,'作用域'等基礎(chǔ)JS章節(jié)

}`//更新,錯誤改正。題主好好看基礎(chǔ)。

回答5:

我認(rèn)為這就是函數(shù)變量的作用域問題,js是很靈活的,還望一起學(xué)習(xí)^~^ ^~^

回答6:

JavaScript中,在全局聲明全局變量后,會成為全局對象的一個(gè)同名屬性。在函數(shù)中聲明局部變量后,它就變成局部對象,也就是函數(shù)的屬性,所以要先通過全局訪問函數(shù)再訪問函數(shù)中的局部變量。

回答7:

函數(shù)作用域啊

標(biāo)簽: JavaScript
主站蜘蛛池模板: 顺昌县| 吉水县| 垫江县| 双柏县| 吴川市| 灌南县| 赤水市| 苗栗县| 阿鲁科尔沁旗| 南康市| 台州市| 柳江县| 中方县| 商水县| 朝阳市| 潜江市| 乌兰察布市| 社旗县| 新龙县| 山西省| 大安市| 故城县| 德保县| 夏津县| 淄博市| 无为县| 南投县| 赣榆县| 宾阳县| 遂昌县| 广平县| 凤山县| 乡宁县| 农安县| 师宗县| 洛阳市| 潜江市| 安宁市| 常宁市| 张家港市| 白玉县|