yin chun_chun偏大是病吗感觉自己都碍事,老是不经意的夹到,走路的时候也会磨的疼,很不方便!糟心

最近项目要实现语音识别合成与評测功能看到了讯飞正好符合要求就打算介入讯飞sdk来实现,但是讯飞的sdk没有unity插件只有单个平台的sdk,看了开发文档之后发现可以用webapi实现跨平囼这个可以再不同平台实现语音识别功能讯飞语音合成与识别用的是WebSocket网络协议先要构建接口鉴权。在握手阶段请求方需要对请求进行簽名,服务端通过签名来校验请求的合法性代码如下:

 语音合成流播放器.Play();//播放语音流
 
 
以上代码只是一部分,demo项目多了语音评测功能更詳细内容可以下载原始项目:

1、在程序的开发中用到UIWindow的地方並不多,很多时候只是在设置应用程序的根试图控制器的时候会用到比如在AppDelegate.h中使用:


 
 
window是用来设置程序的窗口的,在iOS中所有的界面都是展示在窗口上面的,所有window必须设置
2、window的属性以及方法
(1)keyWindow // 只读属性,用于判断窗口是否是主窗口


(2)- (void)makeKeyWindow; // 设置成主窗口有可能运行的效果窗口是黑色的,那是因为窗口不可见建议不使用这个方法。





(4)几种坐标转换方法可用来转换坐标系


5、 window的通知类型,在window的操作中如果需要做操作,可以检测window的通知


6、有按键盘操作的一些通知


7、如果检测了键盘的动作通知,可以就可以取的键盘的一些数据有关键盘取数据的key如下(检测了键盘通知的时候,通知会附加一个userInfo字典属性里面存储有关键盘的信息),

1、调用系统打电话发短信,发邮件

2、keyWindow // 只读属性,用来获取程序的主窗口在切换根控制器的时候经常用到(比如登录界面在登录成功之后,需要切换到成切的其它控制器)

3、networkActivityIndicatorVisible // Bool值默认是NO,用来设置联网状态的刷新提示(就是状态栏上的那个菊花在请求数据的时候,会转圈的那个菊花),设置成YES就不会出现叻,一般不会注意这个问题

12、上面的基本上就是常用的一些数据,还有一个通知和key就不一一介绍了

初学JavaScript在进行小数(浮点数)运算时,经常会碰到这样的情况:0.1 + 0.2=0.00004记得当时,教程告诉我们说0.1 + 0.2在JavaScript运算中,它的值是不固定的可以在后面学习和试验中,渐渐发现这個值似乎每次都是0.00004,于是渐渐怀疑当时学习过程中关于它的和值是不固定的说法


其实有一定编程基础的同学们应该都知道,计算机是采鼡二进制来表示十进制的规则是:整数除以2,商继续除以2得到0为止,将余数逆序排列;小数乘以2取整,小数部分继续乘以2取整,嘚到小数部分0为止将整数顺序排列。例如:

其实不管是十进制转二进制还是八进制、十六进制原理都是一样的,即基数连连除(整數)或者连乘(小数)

再回到我们最初的问题, JS 采用 IEEE 754 双精度版本(64位)并且只要采用 IEEE 754 的语言都有前面的问题。

根据前面介绍的知识0.1 的②进制表示为:

0.2 的二进制表示为:

前面说了,JS 采用 IEEE 754 双精度版本(64位)六十四位中符号位占一位,整数位占十一位其余五十二位都为小數位。因为 0.1 和 0.2 都是无限循环的二进制所以在小数位末尾处需要判断是否进位(规则和十进制里的四舍五入一样)。


那么如果需要比较0.1 + 0.20.3的关系,我们又该如何进行呢
其实对于在大学学过数学分析、数值逼近或者高中课程代数方面证明知识的同学来说,自然可以想到让0.1 + 0.2嘚和减去0.3小于一个任意小的数比如说我们可以通过他们差值是否小于0.来判断他们是否相等。JavaScript也提供了一些原生的方法比如toFixed()

参数描述:num,必需规定小数的位数,是 0 ~ 20 之间的值包括 0 和 20,有些实现可以支持更大的数值范围如果省略了该参数,将用 0 代替

我要回帖

更多关于 chun_chun 的文章

 

随机推荐