温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

微信小程序视图层WXS_数据类型

发布时间:2020-07-16 11:35:32 来源:网络 阅读:401 作者:百度小程序 栏目:web开发

微信小程序视图层WXS_数据类型


数据类型

WXS 语言目前共有以下几种数据类型:

  • number : 数值

  • string :字符串

  • boolean:布尔值

  • object:对象

  • function:函数

  • array : 数组

  • date:日期

  • regexp:正则

number

语法

number 包括两种数值:整数,小数。

var a = 10;var PI = 3.141592653589793;

属性

  • constructor:返回字符串 "Number"。

方法

  • toString

  • toLocaleString

  • valueOf

  • toFixed

  • toExponential

  • toPrecision

以上方法的具体使用请参考 ES5 标准。

string

语法

string 有两种写法:

'hello world';"hello world";

属性

  • constructor:返回字符串 "String"

  • length

除constructor外属性的具体含义请参考 ES5 标准。

方法

  • toString

  • valueOf

  • charAt

  • charCodeAt

  • concat

  • indexOf

  • lastIndexOf

  • localeCompare

  • match

  • replace

  • search

  • slice

  • split

  • substring

  • toLowerCase

  • toLocaleLowerCase

  • toUpperCase

  • toLocaleUpperCase

  • trim

以上方法的具体使用请参考 ES5 标准。

boolean

语法

布尔值只有两个特定的值:true 和 false

属性

  • constructor:返回字符串 "Boolean"

方法

  • toString

  • valueOf

以上方法的具体使用请参考 ES5 标准。

object

语法

object 是一种无序的键值对。使用方法如下所示:

var o = {} //生成一个新的空对象//生成一个新的非空对象o = {  'string'  : 1,  //object 的 key 可以是字符串
  const_var : 2,  //object 的 key 也可以是符合变量定义规则的标识符
  func      : {}, //object 的 value 可以是任何类型};//对象属性的读操作console.log(1 === o['string']);console.log(2 === o.const_var);//对象属性的写操作o['string']++;
o['string'] += 10;
o.const_var++;
o.const_var += 10;//对象属性的读操作console.log(12 === o['string']);console.log(13 === o.const_var);

属性

  • constructor:返回字符串 "Object"

console.log("Object" === {k:"1",v:"2"}.constructor)

方法

  • toString:返回字符串 "[object Object]"

function

语法

function 支持以下的定义方式:

//方法 1function a (x) {  return x;
}//方法 2var b = function (x) { 
  return x;
}

function 同时也支持以下的语法(匿名函数,闭包等):

var a = function (x) {  return function () { return x;}
}var b = a(100);console.log( 100 === b() );

arguments

function 里面可以使用 arguments 关键词。该关键词目前只支持以下的属性:

  • length: 传递给函数的参数个数。

  • [index]: 通过 index 下标可以遍历传递给函数的每个参数。

示例代码:

var a = function(){	console.log(3 === arguments.length);	console.log(100 === arguments[0]);	console.log(200 === arguments[1]);	console.log(300 === arguments[2]);
};
a(100,200,300);

属性

  • constructor:返回字符串 "Function"

  • length:返回函数的形参个数。

方法

  • toString:返回字符串 "[function Function]"

示例代码:

var func = function (a,b,c) { }console.log("Function" === func.constructor);console.log(3 === func.length);console.log("[function Function]" === func.toString());

array

语法

array 支持以下的定义方式:

var a = [];      //生成一个新的空数组a = [1,"2",{},function(){}];  //生成一个新的非空数组,数组元素可以是任何类型

属性

  • constructor:返回字符串 "Array"

  • length

除constructor外属性的具体含义请参考 ES5 标准。

方法

  • toString

  • concat

  • join

  • pop

  • push

  • reverse

  • shift

  • slice

  • sort

  • splice

  • unshift

  • indexOf

  • lastIndexOf

  • every

  • some

  • forEach

  • map

  • filter

  • reduce

  • reduceRight

以上方法的具体使用请参考 ES5 标准。

date

语法

生成 date 对象需要使用 getDate函数, 返回一个当前时间的对象。

getDate()
getDate(milliseconds)
getDate(datestring)
getDate(year, month[, date[, hours[, minutes[, seconds[, milliseconds]]]]])
  • 参数

    • milliseconds: 从1970年1月1日00:00:00 UTC开始计算的毫秒数

    • datestring: 日期字符串,其格式为:"month day, year hours:minutes:seconds"

示例代码:

var date = getDate(); //返回当前时间对象date = getDate(1500000000000);// Fri Jul 14 2017 10:40:00 GMT+0800 (中国标准时间)date = getDate('2017-7-14');// Fri Jul 14 2017 00:00:00 GMT+0800 (中国标准时间)date = getDate(2017, 6, 14, 10, 40, 0, 0);// Fri Jul 14 2017 10:40:00 GMT+0800 (中国标准时间)

属性

  • constructor:返回字符串 “Date”。

方法

  • toString

  • toDateString

  • toTimeString

  • toLocaleString

  • toLocaleDateString

  • toLocaleTimeString

  • valueOf

  • getTime

  • getFullYear

  • getUTCFullYear

  • getMonth

  • getUTCMonth

  • getDate

  • getUTCDate

  • getDay

  • getUTCDay

  • getHours

  • getUTCHours

  • getMinutes

  • getUTCMinutes

  • getSeconds

  • getUTCSeconds

  • getMilliseconds

  • getUTCMilliseconds

  • getTimezoneOffset

  • setTime

  • setMilliseconds

  • setUTCMilliseconds

  • setSeconds

  • setUTCSeconds

  • setMinutes

  • setUTCMinutes

  • setHours

  • setUTCHours

  • setDate

  • setUTCDate

  • setMonth

  • setUTCMonth

  • setFullYear

  • setUTCFullYear

  • toUTCString

  • toISOString

  • toJSON

以上方法的具体使用请参考 ES5 标准。

regexp

语法

生成 regexp 对象需要使用 getRegExp函数。

getRegExp(pattern[, flags])
  • 参数:

    • g: global

    • i: ignoreCase

    • m: multiline。

    • pattern: 正则表达式的内容。

    • flags:修饰符。该字段只能包含以下字符:

示例代码:

var a = getRegExp("x", "img");console.log("x" === a.source);console.log(true === a.global);console.log(true === a.ignoreCase);console.log(true === a.multiline);

属性

  • constructor:返回字符串 "RegExp"

  • source

  • global

  • ignoreCase

  • multiline

  • lastIndex

除constructor外属性的具体含义请参考 ES5 标准。

方法

  • exec

  • test

  • toString

以上方法的具体使用请参考 ES5 标准。

数据类型判断

constructor 属性

数据类型的判断可以使用 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 );


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI