数据类型
sjs 中支持以下数据类型:
- 数值
number
- 字符串
string
- 布尔值
boolean
- 对象
object
- 函数
function
- 数组
array
- 日期
date
- 正则
regexp
以上数据类型的属性和方法与 es5 基本相同,具体请参考 javascript 的用法
数据类型判断
准确判断数据类型的方法是根据constructor
属性来判断
var number = 10;
console.log( "Number" === number.constructor );
var string = "str";
console.log( "String" === string.constructor );
var boolean = true;
console.log( "Boolean" === boolean.constructor );
var object = {};
console.log( "Object" === object.constructor );
var func = function(){};
console.log( "Function" === func.constructor );
var array = [];
console.log( "Array" === array.constructor );
var date = getDate();
console.log( "Date" === date.constructor );
var regexp = getRegExp();
console.log( "RegExp" === regexp.constructor );
typeof
另外使用typeof
可以部分判断
var number = 10;
var boolean = true;
var object = {};
var func = function () {};
var array = [];
var date = getDate();
var regexp = getRegExp();
console.log("number" === typeof number);
console.log("boolean" === typeof boolean);
console.log("object" === typeof object);
console.log("function" === typeof func);
console.log("object" === typeof array);
console.log("object" === typeof date);
console.log("object" === typeof regexp);
console.log("undefined" === typeof undefined);
console.log("object" === typeof null);
Date 和 RegExp
sjs 不支持 new 关键字(new 运算),所以无法通过以下方式创建 date 和 regexp 类型
new Date();
new RegExp("/d+/");
需要通过getDate
和getRegExp
方法获取
getDate();
getDate(milliseconds);
getDate(datestring);
getDate(year, month[, date[, hours[, minutes[, seconds[, milliseconds]]]]]);
getRegExp(pattern[, flags]);
点击纠错
评价此篇文档