开发
API

数据类型

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+/");

需要通过getDategetRegExp方法获取

getDate();
getDate(milliseconds);
getDate(datestring);
getDate(year, month[, date[, hours[, minutes[, seconds[, milliseconds]]]]]);

getRegExp(pattern[, flags]);
点击纠错
评价此篇文档