浅析如何利用JavaScript进行语音识别_javascript技巧

一、基础用法

var recognition = new webkitSpeechRecognition();
recognition.onresult = function(event) {
 console.log(event)
}
recognition.start();

这里操作实际会让用户授权页面开启麦克风,如果用户允许的话,用户可以开始说话了,如果你停说话了,onresult注册的时间 则会被触发,并会讲捕获的音频返回成一个JavaScript对象。

二、响应流

你需要等待用户准备好对话,并且知道对话结束;

var recognition = new webkitSpeechRecognition();
recognition.continuous = true;
recognition.interimResults = true;
recognition.onresult = function(event) {
 console.log(event)
}
recognition.start(); 

这样你可以在用户开始讲话时,提前渲染结果。

你可以自动以识别的语言,默认情况为所在地区语言。

三、x-webkit-speech

Webkit 内核的浏览器支持语音输入

<input type="text" x-webkit-speech /> 

它会识别音频并进行转化为文字

四、安全性

http协议下浏览器每次都会提醒用户去确认语音操作,然而https的页面,没有这样一个麻烦的操作。
JavaScript上下文,整个页面,都能过访问到捕获的音频。

总结

JavaScript的语音识别总体还并未大范围使用,而且受限于浏览器支持,因此只有少数需求或许能够使用到吧。以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索javascript
, 语音
, 语音识别
javascript语音播报
javascript 语音识别、信鸽眼砂配对技巧浅析、浅析谈判中的沟通技巧、浅析职场沟通的技巧、浅析有效演讲的技巧,以便于您获取更多的相关知识。

时间: 2016-10-27

浅析如何利用JavaScript进行语音识别_javascript技巧的相关文章

浅析2种JavaScript继承方式_javascript技巧

js继承方法最主要的是2种,一种是通过原型的方式,一种是通过借用call&apply的构造函数方式.1.原型(prototype): function Body(name,age){// 创建一个Body类 this.name = name;// 赋予基础属性name.age this.age = age; } Body.prototype.sayName =function() {// 给原型定义一个sayName的方法 console.log(this.name); } var a = ne

利用javascript移动div层-javascript 拖动层_javascript技巧

利用javascript移动div层-javascript 拖动层: 程序功能:利用javascript开发在界面上随意拖动以下html code中的div层. javascript移动div层-javascript 拖动层代码-html code: 复制代码 代码如下: <div id="div_Info" style="display: none; dz-index: 101; left: 175px; width: 650px; position: absolut

跟我学习javascript的循环_javascript技巧

1.优先使用数组而不是Object类型来表示有顺序的集合 ECMAScript标准并没有规定对JavaScript的Object类型中的属性的存储顺序. 但是在使用for..in循环对Object中的属性进行遍历的时候,确实是需要依赖于某种顺序的.正因为ECMAScript没有对这个顺序进行明确地规范,所以每个JavaScript执行引擎都能够根据自身的特点进行实现,那么在不同的执行环境中就不能保证for..in循环的行为一致性了. 比如,以下代码在调用report方法时的结果就是不确定的: f

javascript 冒号 使用说明_javascript技巧

老在眼前晃,于是在网上搜吧,查资料,很郁闷网上介绍冒号用法的贴子不多,而且比较零碎,也不够深入,看完让人更迷糊,折腾了两天,终于对冒号(:)有了更进一步的了解,希望对想了解冒号用法的人有所帮助. 1.switch语句分支 2.?:三元表达式的false 3.声明对象直接量的成员 4.声明标签 1和2相信地球人都知道吧?如果有人不知道,那我改成地球上的程序员都知道,哈哈 3.对象直接量我们也经常用,什么是对象直接量呢? 对象直接量(也称为对象初始化程序)是由一个列表构成的,这个列表的元素是用冒号分

函数式JavaScript编程指南_javascript技巧

简介 你是否知道JavaScript其实也是一个函数式编程语言呢?本指南将教你如何利用JavaScript的函数式特性.  要求:你应当已经对JavaScript和DOM有了一个基本的了解. 写这篇指南的目的是因为关于JavaScript编程的资料太多了但是极少的资料提到了JavaScript的函数式特性.在本指南中,我只会讲解这些基本知识而不会深入其它的函数式语言或这是Lambda算子.  你可以点击所有的例子然后你所看到的代码就会被执行,这样就可以令指南变得具有交互性.你也可以使用这个沙箱来

如何利用JSHint减少JavaScript的错误_javascript技巧

前言 JSHint用于分析和验证JavaScript代码是否符合您的编码规则.这个强大的工具可以帮助发现您代码中错误和问题T,它强制你的团队保持一定的编码惯例和风格,使得代码可靠和更容易阅读. 在这篇文章中,我将向您展示如何安装.配置和使用JSHint. 还包括一个例子,列出了一些我最喜欢的能使用JSHint的编辑器. 安装 JSHint 安装JSHint非常容易,你可以使用 Node 包管理器 (npm)来做.如果你还没有安装npm,你可以从 nodeJS website下载最新版,来安装No

浅析JavaScript声明变量_javascript技巧

JavaScript的变量声明语句无论出现在何处,都会先于其他代码首先被执行.使用var关键词声明变量的作用域是当前的执行上下文,有可能是外围函数,或者,当变量声明在函数体之外时,则为全局变量. 定义在函数体外的都属于全局变量,定义在函数体内的属于局部变量.这里的定义是指通过var声明的. JavaScript有隐含的全局概念,意味着你不声明的任何变量都会成为一个全局对象属性.例如: function test(){ myname = "huming"; alert(myname);

浅析javascript函数表达式_javascript技巧

开始学习javascript函数表达式,仔细阅读下文. 1.一般形式的创建函数,在执行代码之前会先读取函数声明,所以可以把函数声明写在函数调用的下面: sayHi(); function sayHi(){ alert("Hi!"); } 2.使用函数表达式创建函数,调用前必须先赋值: sayHi(); //错误!!函数不存在 var sayHi=function(){ alert("Hi!"); } 3.递归 一般递归 function factorial(num)

JavaScript设计模式初探_javascript技巧

目的:设计模式众多,尝试记录下学到的不同设计模式的优劣,方便以后查阅. 前言:半年前看高程的时候看到设计模式这章,云里雾里,不是看不明白,而是不明白为啥要如此麻烦只为创建一个对象.直到最近完成了自己第一个小项目,才体会到当代码量多起来时没有适当的规范与限制是多么大的灾难.于是重新翻开高程,总结下几种我学到的简单设计模式的优劣. 正文:本文一共介绍7种设计模式以及他们的应用场景.优劣. 1.工厂模式 直接用函数来封装对象,将对象作为返回值. function person (name,age) {