成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專(zhuān)欄INFORMATION COLUMN

js函數(shù)參數(shù)的追蹤者--arguments

khlbat / 2398人閱讀

摘要:在函數(shù)中常常會(huì)使用這個(gè)鬼來(lái)在跟蹤當(dāng)前函數(shù)的參數(shù)傳遞情況今天就來(lái)分析一下是如何來(lái)跟蹤參數(shù)的實(shí)例這種情況下沒(méi)有實(shí)參的傳遞參數(shù)與沒(méi)有建立聯(lián)系兩者相互獨(dú)立的還需要說(shuō)明一點(diǎn)在沒(méi)有定義的情況下認(rèn)為是全局變量可是并不是我們想象的那樣實(shí)際上在定義形參時(shí)函數(shù)

在函數(shù)中,常常會(huì)使用arguments[]這個(gè)鬼來(lái)在跟蹤當(dāng)前函數(shù)的參數(shù)傳遞情況,今天就來(lái)分析一下arguments[]是如何來(lái)跟蹤參數(shù)的

實(shí)例1
function fn(x){
   x = 10;
   arguments[0] = 20;
   console.log(x,arguments[0]); //x = 10; arguments[0] = 20;
}
 fn();
 console.log(window.x);// undefined
 console.log(x);// x is not defined

這種情況下,沒(méi)有實(shí)參的傳遞,參數(shù)與arguments沒(méi)有建立聯(lián)系,兩者相互獨(dú)立的.
還需要說(shuō)明一點(diǎn): x = 10,在沒(méi)有var定義的情況下,認(rèn)為是全局變量,可是并不是我們想象的那樣. 實(shí)際上 在定義形參時(shí),函數(shù)內(nèi)部就聲明了一個(gè)變量,var x在函數(shù)內(nèi)部聲明.

實(shí)例2
 function fn(x){
        arguments[0] = 20;
        console.log(x,arguments[0])
    }
    fn();
    // undefined  和 20

這種情況下,也是沒(méi)有傳遞實(shí)參,函數(shù)內(nèi)只有var x聲明,但是并沒(méi)有賦值,所以x就是undefined,參數(shù)和arguments也沒(méi)有建立聯(lián)系.

實(shí)例3
function fn(x){
        x = 10;                      
        arguments[0] = 20;
        console.log(x,arguments[0]); // 20 20
    }
    fn(1);

實(shí)參傳入,此時(shí),參數(shù)和arguments建立聯(lián)系,arguments[0]x的值覆蓋掉.

實(shí)例4
    function fn(x){
        arguments[0] = 20;
        console.log(x,arguments[0]) //20 20
    }
    fn(1);

實(shí)參傳入,與實(shí)例3相同,參數(shù)和arguments建立聯(lián)系,arguments[0]x的值覆蓋掉.

總結(jié)

實(shí)參,影響著arguments[]與參數(shù)之間的聯(lián)系,

嚴(yán)格模式下,arguments不再追蹤參數(shù)的變化

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/78541.html

相關(guān)文章

  • JavaScript函數(shù)(arguments,this)理解

    摘要:除語(yǔ)法不同外,兩者的區(qū)別在于解析器讀取的順序。解析器會(huì)事先讀取函數(shù)聲明,即使你把函數(shù)聲明放在代碼的末端也沒(méi)關(guān)系。修改對(duì)象將可能導(dǎo)致命名參數(shù)失去意義。其實(shí)除允許匿名函數(shù)遞歸調(diào)用自身外,并沒(méi)有什么太大用處。 javaScript因?yàn)槠湔Z(yǔ)法松散,導(dǎo)致函數(shù)(尤其是this)看似簡(jiǎn)單,其實(shí)里面花頭很多。本篇介紹一下JavaScript函數(shù)及其調(diào)用方法。? 函數(shù)聲明和函數(shù)表達(dá)式? ar...

    seanHai 評(píng)論0 收藏0
  • 從use strict看JS(二):函數(shù)傳參模式與arguments

    摘要:系列系列列表從看一與箭頭函數(shù)從看二函數(shù)傳參模式與的上一篇說(shuō)到,對(duì)做了以下限定。是另外一個(gè)變量,指向不同的值,而這兩個(gè)值有相同的類(lèi)型。函數(shù)中,和指向同一個(gè)值,更改的就等于更改了的。可以用改進(jìn)問(wèn)題是這個(gè)在嚴(yán)格模式下不能運(yùn)行。 系列 系列列表:從use strict看JS(一):this與箭頭函數(shù)從use strict看JS(二):函數(shù)傳參模式與arguments use strict 的 ...

    kycool 評(píng)論0 收藏0
  • 學(xué)學(xué)AOP之裝飾模式

    摘要:但是,這樣做的后果就是,我們會(huì)不斷的改變本體,就像把鳳姐送去做整形手術(shù)一樣。在中,我們叫做引用裝飾。所以,這里引入的裝飾模式裝飾親切,熟悉,完美。實(shí)例講解裝飾上面那個(gè)例子,只能算是裝飾模式的一個(gè)不起眼的角落。 裝飾者,英文名叫decorator. 所謂的裝飾,從字面可以很容易的理解出,就是給 土肥圓,化個(gè)妝,華麗的轉(zhuǎn)身為白富美,但本體還是土肥圓。 說(shuō)人話(huà).咳咳~ 在js里面一切都是對(duì)...

    nihao 評(píng)論0 收藏0
  • 翻譯連載 |《你不知道JS》姊妹篇 |《JavaScript 輕量級(jí)函數(shù)式編程》- 第 2 章:函

    摘要:從某些方面來(lái)講,這章回顧的函數(shù)知識(shí)并不是針對(duì)函數(shù)式編程者,非函數(shù)式編程者同樣需要了解。什么是函數(shù)針對(duì)函數(shù)式編程,很自然而然的我會(huì)想到從函數(shù)開(kāi)始。如果你計(jì)劃使用函數(shù)式編程,你應(yīng)該盡可能多地使用函數(shù),而不是程序。指的是一個(gè)函數(shù)聲明的形參數(shù)量。 原文地址:Functional-Light-JS 原文作者:Kyle Simpson?。 禮ou-Dont-Know-JS》作者 關(guān)于譯者:...

    Riddler 評(píng)論0 收藏0
  • 從一道面試題,到“我可能看了假源碼”

    摘要:返回的綁定函數(shù)也能使用操作符創(chuàng)建對(duì)象這種行為就像把原函數(shù)當(dāng)成構(gòu)造器。同時(shí),將第一個(gè)參數(shù)以外的其他參數(shù),作為提供給原函數(shù)的預(yù)設(shè)參數(shù),這也是基本的顆?;A(chǔ)。 今天想談?wù)勔坏狼岸嗣嬖囶},我做面試官的時(shí)候經(jīng)常喜歡用它來(lái)考察面試者的基礎(chǔ)是否扎實(shí),以及邏輯、思維能力和臨場(chǎng)表現(xiàn),題目是:模擬實(shí)現(xiàn)ES5中原生bind函數(shù)。也許這道題目已經(jīng)不再新鮮,部分讀者也會(huì)有思路來(lái)解答。社區(qū)上關(guān)于原生bind的研...

    Carson 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<