欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

TypeOf這些知識點你了解嗎

 更新時間:2016年02月21日 17:17:22   投稿:mrr  
昨天給同事一起玩耍,同事給我出了一道代碼題目,是關(guān)于typeof的,感覺挺好玩的,在此分享給大家,順便鞏固下自己對typeof知識點的總結(jié)

昨天給同事一起玩耍,同事給我出了一道代碼題目,是關(guān)于typeof的,感覺挺好玩的,在此分享給大家,順便鞏固下自己對typeof知識點的總結(jié)。如有不對,請給予指出,共同進(jìn)步。

代碼是這樣的:

<!DOCTYPE html>
<head>
<title>typeof</title>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
</head>
<body>
<script>
var a= a||null; 
var b= c||null; 
var c= typeof f;
console.log(a);
console.log(b);
console.log(c);
</script>
</body>
</html>

那么,你說運行該代碼,chrome調(diào)試器會打印什么呢?

請看,效果圖


為什么會出現(xiàn)這個結(jié)果呢?

首先分析上圖中的兩個null


因為Javascript在執(zhí)行代碼之前,會先預(yù)解析(hoisting)。

什么是預(yù)解析(hoisting)呢?

就是在JavaScript中,你可以在函數(shù)的任何位置聲明多個var語句,它們就像在函數(shù)的頂部聲明一樣發(fā)揮作用,且會給var聲明的變量賦予一個undefined的初始值。這種行為我們稱之為預(yù)解析(hoisting)。

所以呢,在執(zhí)行以上代碼前,Javascript會首先將所有的var變量(a,b,c)預(yù)解析(hoisting),當(dāng)執(zhí)行a||null時,a是undefined的,又因為是||運算,所以結(jié)果就是null咯。

c||null是一個道理。

再來看看,為什么typeof f會是undefined呢?f都沒定義,不應(yīng)該會報錯嗎?

是的,倘若我們?nèi)ナ褂靡粋€未定義的變量,瀏覽器是會報錯的。

但是,當(dāng)用typeof去判斷一個未定義的變量,將返回undefined。

那typeof判斷值類型時,是個怎么機(jī)制呢?總結(jié)如下:

1、 對于數(shù)字類型的值,typeof會返回number,注意:NaN也是一個數(shù)字類型,因為它在JavaScript中代表的是特殊非數(shù)字值。

2、 對于字符串類型的值,typeof會返回string。

3、 對于布爾類型的值,typeof會返回boolean。

4、 對于對象,數(shù)組,null而言,typeof會返回object

5、 對于函數(shù)類型而言,typeof返回function

6、 如果運算數(shù)沒有定義(不存在或未賦值),將會返回undefined。

相關(guān)文章

  • JavaScript閉包的簡單應(yīng)用

    JavaScript閉包的簡單應(yīng)用

    這篇文章主要為大家詳細(xì)介紹了JavaScript閉包的簡單應(yīng)用,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • 微信小程序?qū)崿F(xiàn)上傳多張圖片、刪除圖片

    微信小程序?qū)崿F(xiàn)上傳多張圖片、刪除圖片

    這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)上傳多張圖片、刪除圖片,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-06-06
  • js 屏蔽鼠標(biāo)右鍵腳本附破解方法

    js 屏蔽鼠標(biāo)右鍵腳本附破解方法

    用來屏蔽鼠標(biāo)右鍵的代碼,破解方法也比較簡單。比較根本。禁掉js什么也運行不了。
    2009-12-12
  • html嵌入javascript代碼的三種方式

    html嵌入javascript代碼的三種方式

    本文詳細(xì)介紹了html嵌入javascript代碼的三種主要方式:腳本塊的方式、引入外部獨立的.js文件、事件句柄是以html標(biāo)簽的屬性存在的,有感興趣了解的同學(xué)可以借鑒閱讀
    2023-03-03
  • 一些相見恨晚的 JavaScript 技巧

    一些相見恨晚的 JavaScript 技巧

    本文從7個方面講述 JavaScript 中那些你不很熟知但非常實用的技巧。
    2010-04-04
  • 用js來格式化字符串示例模仿css

    用js來格式化字符串示例模仿css

    用js來格式化字符串示例模仿css...
    2007-04-04
  • 基于微信小程序?qū)崿F(xiàn)透明背景人像分割功能

    基于微信小程序?qū)崿F(xiàn)透明背景人像分割功能

    這篇文章主要介紹了基于小程序?qū)崿F(xiàn)透明背景人像分割,此文主要實現(xiàn)識別人體的輪廓范圍,與背景進(jìn)行分離并保存效果圖,適用于拍照背景替換及透明背景的人像圖(png格式)轉(zhuǎn)換,需要的朋友可以參考下
    2022-10-10
  • 微信小程序?qū)崿F(xiàn)tab切換效果

    微信小程序?qū)崿F(xiàn)tab切換效果

    這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)tab切換效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • SVG動畫vivus.js庫使用小結(jié)(實例代碼)

    SVG動畫vivus.js庫使用小結(jié)(實例代碼)

    本文通過代碼給大家介紹SVG動畫vivus.js庫使用小結(jié),代碼簡單易懂,非常不錯,具有參考借鑒價值,需要的朋友參考下吧
    2017-09-09
  • JavaScript中引用vs復(fù)制示例詳析

    JavaScript中引用vs復(fù)制示例詳析

    這篇文章主要給大家介紹了關(guān)于JavaScript中引用vs復(fù)制的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-12-12

最新評論