最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

解析JavaScript中的不可見數(shù)據(jù)類型

 更新時間:2013年12月02日 10:03:06   作者:  
這篇文章主要是對JavaScript中的不可見數(shù)據(jù)類型進(jìn)行了詳細(xì)的介紹,需要的朋友可以過來參考下,希望對大家有所幫助

JS提供了一些內(nèi)置對象、函數(shù)和構(gòu)造器供我們編程,如Math、parseInt、Object、Array等。這些都是可見的,編程時可以使用的。比如我可以new Object 或 new Array。

有一些則是不可見的,這些對象只能由引擎在特殊的情形提供。這些類型的對象往往還被消減了一些功能。下面列舉一些

一、Arguments 類型
Arguments 類型 不能由程序員手動創(chuàng)建其對象,即你不能 new Arguments() 。 它有且僅有一個對象arguments

復(fù)制代碼 代碼如下:

function func() {
    console.log(arguments[0])     // 1
    console.log(arguments.length) // 3
}
func(1, 2, 3)

arguments對象是在函數(shù)調(diào)用的時候創(chuàng)建的,只在函數(shù)內(nèi)部可見和使用??梢钥吹絘rguments很象Array,可以按索引取元素,也有l(wèi)ength屬性。但它不是Array,它沒有Array的有一些方法比如push、pop等。Arguments 在ES5 10.6 里定義。

二、bind返回的函數(shù)很特殊
bind是ES5給Function.prototype新增的一個方法,它和call/apply一樣在function上直接調(diào)用。它返回一個指定了上下文和參數(shù)的函數(shù)。

復(fù)制代碼 代碼如下:

function func(age) {
    console.log('name: ' + this.name + ', career: ' + age)
}
var person = {name: 'John McCarthy'}
var f1 = func.bind(person, 'computer scientist')
f1() // name: John McCarthy, career: computer scientist

可以看到返回的函數(shù)f1和普通函數(shù)一樣使用小括號執(zhí)行調(diào)用了。 一切正常,但下面的代碼會讓你大跌眼鏡
復(fù)制代碼 代碼如下:

function func(age) {
    console.log('name: ' + this.name + ', career: ' + age)
}
var person = {name: 'John McCarthy'}
var f1 = func.bind(person, 'computer scientist')
console.log(f1.prototype) // undefined

和上面代碼比較,就最后一句不同,沒有執(zhí)行f1(),而是打印出f1.prototype,發(fā)現(xiàn)是undefined。

奇怪嗎? 每個function不都有一個prototype屬性嗎,這是用來實現(xiàn)原型繼承的哦。的確,bind返回的function比較特殊,它沒有prototype。這種特殊的函數(shù)是由JS引擎創(chuàng)建的,客戶端程序員沒法通過函數(shù)聲明或函數(shù)直接量得到。

這一點在規(guī)范里有明確提示 ES5 15.3.4.5

相關(guān)文章

  • JS實現(xiàn)簡單tab選項卡切換

    JS實現(xiàn)簡單tab選項卡切換

    這篇文章主要為大家詳細(xì)介紹了JS實現(xiàn)簡單tab選項卡切換,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • 淺談webpack構(gòu)建工具配置和常用插件總結(jié)

    淺談webpack構(gòu)建工具配置和常用插件總結(jié)

    這篇文章主要介紹了淺談webpack構(gòu)建工具配置和常用插件總結(jié),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2020-05-05
  • js圖片上傳的封裝代碼

    js圖片上傳的封裝代碼

    這篇文章主要為大家詳細(xì)介紹了js圖片上傳的封裝代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • JavaScript實現(xiàn)動態(tài)添加Form表單元素的方法示例

    JavaScript實現(xiàn)動態(tài)添加Form表單元素的方法示例

    這篇文章主要介紹了JavaScript實現(xiàn)動態(tài)添加Form表單元素的方法,結(jié)合實例形式分析了javascript表單元素操作相關(guān)函數(shù)使用方法與相關(guān)注意事項,需要的朋友可以參考下
    2017-08-08
  • JavaScript 中級筆記 第二章

    JavaScript 中級筆記 第二章

    對象是組成JavaScript的基本單元。本章將從JavaScript語言中最重要的幾個部分開始介紹:引用,函數(shù)重載,作用域,閉包和上下文。有了這些知識后,面向?qū)ο箝_發(fā)就將變得簡單。
    2009-09-09
  • Javascript實現(xiàn)html轉(zhuǎn)pdf高清版(提高分辨率)

    Javascript實現(xiàn)html轉(zhuǎn)pdf高清版(提高分辨率)

    這篇文章主要介紹了Javascript將html轉(zhuǎn)成pdf高清版(提高分辨率),需要的朋友可以參考下
    2020-02-02
  • WEB前端開發(fā)框架Bootstrap3 VS Foundation5

    WEB前端開發(fā)框架Bootstrap3 VS Foundation5

    WEB前端開發(fā)框架Bootstrap3 VS Foundation5,這篇文章主要介紹了Bootstrap3與Foundation5的五大區(qū)別,感興趣的小伙伴們可以參考一下
    2016-05-05
  • JS實現(xiàn)簡單的鍵盤打字的效果

    JS實現(xiàn)簡單的鍵盤打字的效果

    本文給大家分享的是使用javascript實現(xiàn)的簡單的鍵盤打字效果,十分的簡單實用,推薦給有需要的小伙伴參考下。
    2015-04-04
  • uni-app如何讀取本地json數(shù)據(jù)文件并渲染到頁面上

    uni-app如何讀取本地json數(shù)據(jù)文件并渲染到頁面上

    在做前端開發(fā)的時候,少不了要用一些模擬的json的數(shù)據(jù)來進(jìn)行測試,這篇文章主要給大家介紹了關(guān)于uni-app如何讀取本地json數(shù)據(jù)文件并渲染到頁面上的相關(guān)資料,需要的朋友可以參考下
    2022-08-08
  • Echarts橫向堆疊柱狀圖和markLine實例詳解

    Echarts橫向堆疊柱狀圖和markLine實例詳解

    一些柱形圖在數(shù)據(jù)量比較多的時候,橫向排列受到擠壓,導(dǎo)致柱形圖,變的非常細(xì),影響整體的效果,所以應(yīng)該將柱形圖堆疊起來,這樣就會好很多,下面這篇文章主要給大家介紹了關(guān)于Echarts橫向堆疊柱狀圖和markLine的相關(guān)資料,需要的朋友可以參考下
    2022-06-06

最新評論

三台县| 马龙县| 贵州省| 临沂市| 祥云县| 浦北县| 青阳县| 阳朔县| 无棣县| 永顺县| 临夏县| 德昌县| 滦南县| 桃源县| 延吉市| 黔南| 陆川县| 石河子市| 朔州市| 乌兰浩特市| 公主岭市| 堆龙德庆县| 抚远县| 曲沃县| 白山市| 大英县| 菏泽市| 天长市| 德钦县| 山东省| 田阳县| 玉溪市| 博爱县| 长春市| 贵阳市| 福鼎市| 华亭县| 商南县| 保靖县| 修武县| 阳西县|