国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

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

javaScript 函數

瀏覽:116日期: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
相關文章:
主站蜘蛛池模板: 欧美成人在线免费 | 亚洲在线小视频 | 自拍视频在线 | 国产精品黄页在线播放免费 | 久久99国产亚洲精品观看 | 色老久久精品偷偷鲁一区 | 亚洲欧美日韩久久精品第一区 | 全部孕妇毛片 | 亚洲成人视 | 国产三级香港在线观看 | 亚洲欧美视频网站 | 亚洲精品天堂一区 | 九九热精品在线 | 国产99视频精品免费视频7 | 国产成人精品亚洲一区 | 国产精品亚洲精品不卡 | 久久91精品国产99久久yfo | a级一片| 欧美18www| 国产真实乱子伦精品视手机观看 | 亚洲日本欧美综合在线一 | 一级片网址 | 日韩中文字幕视频在线 | 一本久道在线 | 国产在线观看精品香蕉v区 国产在线观看免费人成小说 | 男人好大好硬好爽免费视频 | 欧美成人资源 | 国内一级野外a一级毛片 | 国产精品一区高清在线观看 | 欧美在线成人免费国产 | 国产毛片一区二区三区精品 | 中国美女隐私无遮挡免费视频 | 欧美精品hdvideosex4k | 久久精品视频在线 | 午夜成人免费影院 | 久久综合九九亚洲一区 | 特级毛片全部免费播放器 | 毛片一级 | 杨幂国产精品福利在线观看 | 一级一片免费播放 | 亚洲精品不卡久久久久久 |