国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Javascript中的常用的檢測(cè)方法

muddyway / 1704人閱讀

摘要:數(shù)組檢測(cè)使用例如兼容性可以使用以下方式,先檢測(cè)是否支持。用來(lái)比較兩個(gè)值是否嚴(yán)格相等,與相同基本類型檢測(cè)用來(lái)檢查一個(gè)數(shù)值是否為有限的用來(lái)檢查一個(gè)值是否為用來(lái)判斷一個(gè)值是否為整數(shù)。目前接觸到的一些方法,有新的日后再更新。

數(shù)組檢測(cè) 1.使用Array.isArray()
Array.isArray(obj)

例如:

Array.isArray([]) //true
Array.isArray({}) //false

兼容性:

Chrome Firefox IE Opera Safari
5 4.0(2.0) 9 10.5 5

可以使用以下方式,先檢測(cè)是否支持Array.isArray。

if(Array.isArray){
    return Array.isArray(obj);
}
2. 使用instanceof
arr instanceof Array

例如:

var arr=[];
console.log(arr instanceof Array); //true
3. 使用Object.prototype.toString方法
if( Object.prototype.toString.call(arr) === "[object Array]" ) {
   console.log("yes");
}
4.使用constructor的方法
function isArray(obj){
    return !!obj && Array === obj.constructor;
}
類型檢測(cè)

typeof操作符檢測(cè)給定變量的數(shù)據(jù)類型

typeof operand //operand 是一個(gè)表達(dá)式,表示對(duì)象或原始值

以下是一些常見類型的返回結(jié)果,值得注意的是null返回的是object,其實(shí)對(duì)于引用類型的判斷都為object。

Type Result
Undefined "undefined"
Null "object" (see below)
Boolean "boolean"
Number "number"
String "string"
Symbol (new in ECMAScript 2015) "symbol"
Host object (provided by the JS environment) Implementation-dependent
Function object (implements [[Call]] in ECMA-262 terms) "function"
Any other object "object"
對(duì)象類型檢測(cè) 1. instanceof

用來(lái)檢測(cè) constructor.prototype是否存在于object 的原型鏈上
使用方式:

object instanceof constructor

舉個(gè)例子:

function A(){};
var a=new A();
a instanceof A //true
a instanceof Object //true
a.prototype instanceof Object //true
2. isPrototypeOf

只要是原型鏈所派生的實(shí)例的原型,會(huì)返回true

Object.prototype.isPrototypeOf(instance);

這里需要注意的是與instanceof的區(qū)別,在constructors被復(fù)寫,而又沒(méi)有重新制定的情況下,照樣可以使用isPrototype

var A = {
 //something
}
var B = Object.create(A);
var C = Object.create(B);

console.log(A.isPrototypeOf(C));  // true
console.log(C instanceof A);      //TypeError
3. hasOwnProperty

hasOwnProperty() 方法用來(lái)判斷某個(gè)對(duì)象是否含有指定的自身屬性。

4. Object.is()

用來(lái)比較兩個(gè)值是否嚴(yán)格相等,與===相同

基本類型檢測(cè) Number

Number.isFinite()
用來(lái)檢查一個(gè)數(shù)值是否為有限的(finite)

Number.isNaN()
用來(lái)檢查一個(gè)值是否為NaN

Number.isInteger()
用來(lái)判斷一個(gè)值是否為整數(shù)。在JavaScript中,整數(shù)和浮點(diǎn)數(shù)是同樣的儲(chǔ)存方法,所以1和1.0為同一個(gè)值.

Number.isSafeInteger()
JavaScript能夠準(zhǔn)確表示的整數(shù)范圍在-2^53到2^53之間(不含兩個(gè)端點(diǎn)),超過(guò)這個(gè)范圍,無(wú)法精確表示這個(gè)值。

目前接觸到的一些方法,有新的日后再更新。

參考資料

Check if object is array?

MOZILLA DEVELOPER NETWORK

阮一峰 《ECMAScript 6入門》

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

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

相關(guān)文章

  • JavaScript 表單腳本

    摘要:文本框獲得焦點(diǎn)時(shí),選中其中所有的文本思路利用焦點(diǎn)事件事件,在文本框獲得焦點(diǎn)時(shí),利用其方法選中所有文本。自動(dòng)切換焦點(diǎn)思路利用事件檢測(cè)用戶輸入新字符后,文本框內(nèi)的字符串是否已經(jīng)達(dá)到最大長(zhǎng)度,若達(dá)到最大長(zhǎng)度,則將焦點(diǎn)切換至下一個(gè)文本框。 JavaScript 表單腳本 通過(guò) document.forms 可以獲得一個(gè)包含當(dāng)前頁(yè)面中所有表單的集合 HTMLFormElement 接口 下面是這...

    PrototypeZ 評(píng)論0 收藏0
  • 《編寫可維護(hù)JavaScript》之編程實(shí)踐

    摘要:最近讀完編寫可維護(hù)的,讓我受益匪淺,它指明了編碼過(guò)程中,需要注意的方方面面,在團(tuán)隊(duì)協(xié)作中特別有用,可維護(hù)性是一個(gè)非常大的話題,這本書是一個(gè)不錯(cuò)的起點(diǎn)。擴(kuò)展閱讀編寫可維護(hù)的歡迎來(lái)到石佳劼的博客,如有疑問(wèn),請(qǐng)?jiān)谠脑u(píng)論區(qū)留言,我會(huì)盡量為您解答。 最近讀完《編寫可維護(hù)的JavaScript》,讓我受益匪淺,它指明了編碼過(guò)程中,需要注意的方方面面,在團(tuán)隊(duì)協(xié)作中特別有用,可維護(hù)性是一個(gè)非常大的話...

    張春雷 評(píng)論0 收藏0
  • JavaScript檢測(cè)原始值、引用值、屬性

    摘要:檢測(cè)函數(shù)從技術(shù)上講,中的函數(shù)是引用類型,同樣存在構(gòu)造函數(shù),每個(gè)函數(shù)都是其實(shí)例,比如不好的寫法然而,這個(gè)方法亦不能跨幀使用,因?yàn)槊總€(gè)幀都有各自的構(gòu)造函數(shù),好在運(yùn)算符也是可以用于函數(shù)的,返回。 上周寫過(guò)一篇讀書筆記《編寫可維護(hù)的JavaScript》之編程實(shí)踐,其中 第8章 避免『空比較』是博主在工作中遇坑較多的雷區(qū),所以特此把該章節(jié)重新整理分享,希望大家不再坑隊(duì)友(>﹏<)。 在 Jav...

    劉德剛 評(píng)論0 收藏0
  • JavaScript 客戶端檢測(cè)——“能力檢測(cè)注意要點(diǎn)

    摘要:能力檢測(cè)性能檢測(cè)基本模式語(yǔ)法目標(biāo)不是識(shí)別特定的瀏覽器,而是識(shí)別瀏覽器的能力。更可靠的能力檢測(cè)能力檢測(cè)對(duì)于想知道某個(gè)特性是否會(huì)按照適當(dāng)方式行事非常有用。所以在可能的情況下,要盡量使用進(jìn)行能力檢測(cè)。 客戶端檢測(cè) 不到萬(wàn)不得已,就不要使用客戶端檢測(cè)。只要能夠找到更通用的方法,就應(yīng)該優(yōu)先采用更通用的方法。先設(shè)計(jì)最通用的方案,然后再使用特定于瀏覽器的技術(shù)增強(qiáng)該方案。 能力檢測(cè)(性能檢測(cè)) 基本模...

    Pluser 評(píng)論0 收藏0
  • JavaScript常用腳本集錦6

    摘要:它會(huì)指出一個(gè)類是繼承自另一個(gè)類的。測(cè)試測(cè)試代碼來(lái)源頁(yè)面倒計(jì)時(shí)的一段運(yùn)用倒計(jì)時(shí)的一段腳本。截止日期符合日期格式,比如等有效日期。截止的天數(shù)小時(shí)分鐘秒數(shù)組成的對(duì)象。 清楚節(jié)點(diǎn)內(nèi)的空格 function cleanWhitespace(element) { //如果不提供參數(shù),則處理整個(gè)HTML文檔 element = element || document; //...

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

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

0條評(píng)論

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