·您当前的位置:首页 > 技术教程 > AS2与AS3技术 >

[AS3]AS3.0百条最实用知识点全集(4)

时间:2012-11-22 23:54cnblogs.com
【让其它域的.swf访问本域的.swf】 在本域的.swf文件里加上:Flash.system.Security.allowDomain() 或者使用安全策略文件crossdomain.XML.在Flash8以前,这个文件必须放在.swf所在域的根目录,现在,你可以使用 flash.s

  【让其它域的.swf访问本域的.swf】
在本域的.swf文件里加上:Flash.system.Security.allowDomain()
或者使用安全策略文件"crossdomain.XML".在Flash8以前,这个文件必须放在.swf所在域的根目录,现在,你可以使用 flash.system.Security.loadPolicyFile(),指定安全策略文件所在的位置.拒绝任何域的做法是 在<cross-domain-policy>标签内什么也不填,安全策略文件也支持通用字符"*":
<?xmlversion="1.0"?>
<!--http://www.mydomain.com/crossdomain.xml-->
<cross-domain-policy>
<allow-Access-fromdomain=">
<allow-access-fromdomain="*.Y-boy.cn"/>
<allow-access-fromdomain="210.38.196.48"/>
<allow-access-fromdomain="*"/>
</cross-domain-policy>
【数字的不同进制之间的转换】
parseInt(str:String,radix:uint=0):Number返回十进制的数,参数radix表示要分析的数字的基数.如果省略radix,就默认为10,除非字符串的开头是"0x","0X"或"0":
trace(parseInt("0x12"));//设定radix为16,输出:18
trace(parseInt("017"));//设定radix为8,输出:15
或者使用Number,uint和int对象的toString(radix)方法.
【使用Math.round()对一个数取整,四舍五入】
Math.round()
trace(Math.round(204.499));//输出:204
trace(Math.round(401.5));//输出:402
【使用Math.floor()对一个数向下取整,就是只要整数部分而不理会小数分】
trace(Math.floor(204.99));//输出:204
【使用Math.ceil()对一个数向上取整,只要小数部分不为零,整数部分就加1】
trace(Math.ceil(401.01));//输出:402
【产生一个随机数】
使用Math.random()产生一个伪随机数n,其中0<=n<1
【把数字取至最近的小数点位,即指定精确度】
1.决定你要取的数字的小数点位数:例如,如果你想把90.337取成90.34,就表示你要取到两位小数点位,也就是说你想取至最近的0.01;
2.让输入值除以步骤1所选的数字(此例为0.01);
3.使用Math.round()把步骤2所计得的值取成最近的整数;
4.把步骤3所得的结果乘以步骤2用于除法的那个值.
例如,要把90.337取成两个小数点位数,可以使用:
trace(Math.round(90.337/0.01)*0.01);//输出:90.34
【把数字取成一个整数的最接近倍数值】
例1,这样会把92.5取成5的最近倍数值:
trace(Math.round(92.5/5)*5);//输出:95
例2,这样会把92.5取成10的最近倍数值:
trace(Math.round(92.5/10)*10);//输出:90
【在指定数值范围内获得随机数】
//可取范围:[min,max]
privatefunctionrandRange(min:Number,max:Number):Number{
varrandomNum:Number=Math.floor(Math.random()*(max-min+1))+min;
returnrandomNum;
}
应用例子:
模拟投银币,即希望得到随机布尔值(true或false):randRange(0,1);
模拟投骰子,即希望得到随机六个值:randRange(1,6);
为避免被缓存而需要产生一个独一无二的数字追加在URL尾端,通常最佳方法是取得当前毫秒数.
【弧度(radian)与度数(degree)之间的转换】
从弧度转为度数:degrees=radians*180/Math.PI
从度数转为弧度:radians=degrees*Math.PI/180

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器