小程序语音MP3转WAV

前言 小程序录制的语音格式是aar和mp3, 如果想语音文本识别,像百度语音等SDK要求的都是无损原声pcm格式(wav仅仅是pcm的封装),下面提供两种将mp3转换为wav的方法 0x1通过第三方接口 <?php $url = 'http://server.com/sound.mp3'; $data = json_decode(file_get_contents('http://api.rest...

为什么typeof null 是object类型

在对对象进行判断的时候,我们通常会使用typeof 来进行判断,但是值为null的时候也会被判断为object,这是为什么呢? 原理是这样的,不同的对象在底层都表示为二进制,在 JavaScript 中二进制前三位都为 0 的话会被判 断为 object 类型,null 的二进制表示是全 0,自然...

mac上使用NVM管理不同node版本

通过nvm来管理 场景:同组的同事使用node版本是5.7.0,而本机安装了node 7.2.0,如何兼容? 使用nvm管理。 使用Homebrew安裝nvm 使用nvm安裝Node.js 使用nvm無痛切換Node.js版本 安装nvm brew install nvm 1 使nvm生效 source $(brew --prefix nvm)/nvm.sh 1 或者: echo "sour...

Mac上使用brew安装nvm来支持多版本的Nodejs

brew方式 如果机器没有安装过node,那么首先brew install nvm安装nvm。 其次需要在shell的配置文件(~/.bashrc, ~/.profile, or ~/.zshrc)中添加如下内容: # For NVM export NVM_DIR=~/.nvm source $(brew --prefix nvm)/nvm.sh 注意配置的顺序,以防开启新终端,node出现找不到的情况。 重启终端...

Pycharm激活教程,亲测可用,无时间限制!

首先去下载最新的pycharm 2.7.3,进行安装。可以直接在官网下载。下载地址:http://www.jetbrains.com/pycharm/download/#section=windows PyCharm 的激活方式: 直接打开pycharm,选License server激活,输入:http://idea.imsxm.com

自己二次封装了一个时间范围选择插件,可选范围与相对时间

由于工作需要,二次封装时间选择插件 laydate5.0.7 相对绝对时间范围选择 包含功能:单周,双周,单月,季度,自定义范围选择 相对时间选择:最近7天,最近14天,最近30天,最近90天等功能 需要的可以git下来:传送门  如果能给个star会更好奥 配置项: ...

JS新建MAP对象,并对其进行操作

对于MAP,数组很多伙伴可能会经常弄混,使用起来概念模糊,在此我稍微总结下自己的使用经验: 数组: 一般我们这样创建: var arr =  new Array(); 或者直接: var arr = []; 然后对数组的操作: 1,添加元素: var obj = '你要添加的元素'; arr.push(obj); 2,查找元素...

__proto__与prototype的差别,原型与继承的关系

在掘金看到一篇很好的文章,在这里分享给大家一下,顺便自己也做个记录;这篇文章很清楚的说明了原型与继承之间的差别,而且还提出了新手经常犯得错误; 今天同事小英童鞋问了我一个问题: function Foo(firstName, lastName){ this.firstName = firstName; this.lastName = last...

回调函数,异步回调函数,同步,异步到底有什么差别?

我觉得大家有点把回调(callback)和异步(asynchronous)的概念混淆在一起了。 定义 回调是什么? 看维基的 Callback_(computer_programming) 条目: In computer programming, a callback is a reference to a piece of executable code that is passed as an argument to other code. jQuery文档How jQuery Works#Callback_and_Functio....

简单明了理解回调 (callback && typeof(callback) === “function”) && callback();

var func1=function(callback){ //do something. (callback && typeof(callback) === "function") && callback(); } func1(func2); var func2=function(){ } 回调存在且必须是函数引用或者函数表达式: (callback && typeof(callback) === "function") && callback(); 简单明了理解回调 你...

js的冒泡机制详解

一、什么是事件冒泡 在一个对象上触发某类事件(比如单击onclick事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事件处理程序或者事件返回true,那么这个事件会向这个对象的父级对象传播,从里到外,直至它被处理(...