Scorpio 脚本的 全局函数

2021-06-08 21:02 更新
获取 类型
typeof( c#里的东西 ) 只能获取 c#的东西,对于 脚本里的 表/数组/变量等使用它是会出错误的
				例如脚本里写
					var t = GameObject( "测试" );
					typeof( t );//是 GameObject 类型
					var e = 65;
					typeof( e );//错误 


			type( 目标 ) 可以获取 脚本里的 表 数组 变量 方法 等的东西的类型,对于 c# 的东西也能获取,但只能知道c#的东西是 c#类的

				例如脚本里写
					//获取脚本的
					var t1 = [];
					var t2 = {};
					var t3 = function(){};
					type( t1 );//是5
					type( t2 );//是6
					type( t3 );//是4
					//可以获取c#的
					type( new GameObject() );//是8

					这是返回的数字 代表的意思
				        0 意思是 Null,           //Null
				        1 意思是 Boolean,        //布尔
				        2 意思是 Number,         //数字
				        3 意思是 String,         //字符串,函数
				        4 意思是 Function,       //函数
				        5 意思是 Array,          //数组
				        6 意思是 Table,          //MAP
				        7 意思是 Enum,           //枚举
				        8 意思是 UserData,       //c#的普通类


			typeof 和 type 不同的是,typeof 能够获取 c#的详细,而type只能给出它是普通类
			如果不知道一个变量是什么来的,可以先type获取,如果是c#类,那就再typeof 获取详细
				//脚本里:			
				var 未知 = GameObject();
				//现假设不知道 未知 变量 里是什么来的
				//如果是c#的普通类
				if( type( 未知 ) == 8 ){
					//这会获取到想详细,例如这例子是 GameObject类型
					if( typeof( 未知 ) == GameObject ){
						//...
					}
				}


转换 变量 的 值类型
//脚本里使用:
			//将变量转为 特定类型值,
				var ct;
				//可以从数字格式的字符串获得数字,非数字内容杂在里面是会执行失败的
				ct = toint( "15" );
				ct = tosbyte( t ) 
				ct = tobyte( t ) 
				ct = toshort( t );
				ct = toushort( t );
				ct = touint( t );
				ct = tolong( t );
				ct = toulong( t ); 
				ct = tofloat( t );
				ct = tonumber( t );
				//ct = toenum( t );
				ct = tostring( t );
		


获取 变量 的 值类型

//脚本里使用: //注意的问题,脚本里的默认值不是Int32是double,所以必须转成对应类型才能判断对的,否则就会得到false is_int( toint( 65 ) );//返回true is_int( 65 );//返回false //下面也都是一样的使用方式 is_null( ? ) is_bool( ? ) is_number( 任何的数值类型,例如65.3 ) is_double( ? ) is_long( ? ) is_string( ? ) is_function( ? ) is_array( ? ) is_table( ? ) is_enum( ? ) is_userdata( ? )


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号