2014-08-30 103 views
3

問題非常簡單。如果您的實例,例如,緩衝你做:如何獲取節點JS中的對象的類名稱

b = new Buffer(0); 

那麼你檢查類型:

typeof b; 

結果是「對象」,但我想知道這是一個緩衝區。

如果在節點控制檯使這個你得到它:

> B =新的緩衝區(1024);
>的typeof b
'對象'
> b
<緩衝... >

所以,有些控制檯怎麼知道,b爲緩衝區。

+0

可能的重複[如何獲取JavaScript中的對象類型的名稱?](http://stackoverflow.com/questions/332422/how-do-i-get-the-name-of-an- object.type-in​​-javascript) – mb21 2014-08-30 21:22:37

+5

b.constructor.name – maximkou 2014-08-30 21:22:40

+1

注意:['Buffer.isBuffer()'](http://nodejs.org/api/buffer.html#buffer_class_method_buffer_isbuffer_obj)和(在0.11+)[ 'util.isBuffer()'](https://github.com/joyent/node/blob/v0.11.13/lib/util.js#L581-L584)。 – 2014-08-30 21:28:25

回答

7

你的情況:

b = new Buffer(1024); 
if (b instanceof Buffer) { 
    ... 

更一般地,看this answer