nodejs中怎么判断一个对象类型

发布网友

我来回答

2个回答

热心网友

你好,Node.js归根到底还是JS,在JS中所有的变量都是对象,我们可以通过typeof方法得到一些简单数据类型变量的具体类型,比如:

var str = 'abc',
    num = 123;
console.log(typeof abc); // string
console.log(num); // number

但是对于一些复杂对象,我们再使用typeof只能得到object,比如:

var obj = {},
    arr = [];
console.log(typeof obj); // object
console.log(typeof arr); // object

如果要得到这类复杂类型的具体类型,可以使用下面这个方法:

function isObject(obj){
    return Object.prototype.toString.call(obj) === '[object Object]';
}

function isArray(arr) {
    return Object.prototype.toString.call(arr) === '[object Array]';
}

// Test
var obj = {},
    arr = [];
console.log(isObject(obj)); // true
console.log(isArray(arr)); // true

另外,ES5之后给Array对象增加了isArray方法,你也可以酌情使用:

var arr = [];
Array.isArray(arr); // true

好了,最后附一张图,说明一切~~

希望是你想要的答案,望采纳~

热心网友

代码如下:

function checkUnfined(value){

if(typeof(value)=='undefined'){

return ""; 

}

return value; 

}

node.js

Node.js是一个Javascript运行环境(runtime),发布于2009年5月,由Ryan Dahl开发,实质是对Chrome V8引擎进行了封装。Node.js对一些特殊用例进行优化,提供替代的API,使得V8在非浏览器环境下运行得更好。

V8引擎执行Javascript的速度非常快,性能非常好。Node.js是一个基于Chrome JavaScript运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞I/O 模型而得以轻量和高效,非常适合在分布式设备上运行数据密集型的实时应用。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com