亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

javaScript 函數

瀏覽:89日期:2023-06-03 11:17:24

問題描述

function Foo(){ getName = function(){console.log(1); }; return this;}var getName = function (){ console.log(4)}; Foo().getName();

上面的代碼為什么輸出的是1;

foo()運行之后輸出了this,這個this是window對象,foo()中的getName是不是也就成了全局下的函數表達式;而下面的var getName也是一個函數表達式;為什么打印結果是1;

foo,執行后它等同于于下面這個代碼么?

getName = function(){ console.log(1);};var getName = function (){ console.log(4)}; getName(); //4

問題解答

回答1:

沒調用Foo的時候

window.getName = function(){ console.log(4);}

調用Foo()的時候

getName = function(){console.log(1); };// 相當于更改了 window.getName

調用后Foo里面的return this的確指向window,所以最后結果是1.

回答2:

function Foo(){ getName = function(){console.log(1); }; return this;}//全局聲明一個變量getNamevar getName = function (){ console.log(4)};//重新賦值getName = function () { console.log(1)}//最終打印結果為1window.getName()回答3:

Foo().getName(); 執行的是Foo中的getName

回答4:

function Foo(){ getName = function(){console.log(1); }; return this;}var getName = function (){ console.log(4)};Foo().getName();

function Foo(){ getName = function(){console.log(1); }; return this;}var getName = function (){ console.log(4)};getName = function () { console.log(1)}window.getName()回答5:

你console.log(Foo())看看,確定是window?

回答6:

Foo函數里面的getName不是用var申明的,所以是全局的,所以當Foo運行時函數里面的getName函數會覆蓋外面定義的

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 日韩免费在线 | 欧美日韩在线播放成人 | 国产欧美日韩视频在线观看一区二区 | 久久激情免费视频 | 国产亚洲精品97在线观看 | 亚洲爱色 | 91视频这里只有精品 | 东莞a级毛片| 香蕉免费一区二区三区在线观看 | 国产观看精品一区二区三区 | 国产在线拍揄自揄视频不卡99 | 中国欧美日韩一区二区三区 | 黄色三级毛片视频 | 国产欧美精品综合一区 | 国产高清好大好夹受不了了 | 国产视频1区 | 韩日一级视频 | 欧美成人a级猛男视频片 | freexnxx日本欧美18 | 日本久久中文字幕 | 国产精品美女一区二区三区 | 中文字幕第四页 | 高清一区二区亚洲欧美日韩 | 日本欧美一区二区三区免费不卡 | 成人在线免费观看网站 | 日本一级特黄大一片免 | 日本在线观看免费看片 | 欧洲1区二区三区二页 | 在线观看亚洲一区 | 亚洲精品色一区色二区色三区 | 唐人社区精品视频 | 三级黄色毛片视频 | 一 级 黄 中国色 片 | 激情婷婷网 | 中文字幕日本在线视频二区 | 亚洲乱码在线 | 亚洲综合视频在线观看 | 91免费国产在线观看 | 国产自产2023最新麻豆 | 一本久道久久综合 | 日韩精品一区二区三区高清 |