递归函数是在一个函数通过名字调用自身的情况下构成的,如下所示:
1 | function factorial(num) { |
这是一个经典的递归阶乘函数。虽然这个函数表面上看来没什么问题,但是下面的代码可能导致他出错。
追求优雅的代码
1 | hexo n == hexo new "a new post" 新建文章,最好用双引号括起来 |
Node 版本的迭代速度很快,版本很多,不同项目对 node 的依赖不同,故需要切换不同 node 版本
目前有 n 和 nvm 这两个工具可以对 Node 进行无痛升级,n 命令是作为一个 node 的模块而存在,而 nvm 是一个独立于 node/npm 的外部 shell 脚本,因此 nvm 命令相比 n 更加全面, n 更有局限性。
nvm 是 Mac 下的 node 管理工具,有点类似管理 Ruby 的 rvm,如果是需要管理 Windows 下的 node,官方推荐是使用 nvmw 或 nvm-windows 。
我按 nvm 提供的文档来完成 nvm 及 node 多个版本的安装,因为在安装过程中遇到不少坑,特在此总结安装中遇到的各种坑
下载注册表文件cmder_context_enable.reg1
2
3
4
5
6
7
8
9
10
11
12
13
14
15Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\Background\shell\cmder]
@="Open in Cmder"
"Icon"="C:\\cmder\\Cmder.exe,0"
[HKEY_CLASSES_ROOT\Directory\Background\shell\cmder\command]
@="\"C:\\cmder\\Cmder.exe\" \"%V\""
[HKEY_CLASSES_ROOT\Directory\shell\cmder]
@="Open in Cmder"
"Icon"="C:\\cmder\\Cmder.exe,0"
[HKEY_CLASSES_ROOT\Directory\shell\cmder\command]
@="\"C:\\cmder\\Cmder.exe\" \"%1\""
由于本地Git
仓库和GitHub
仓库之间的传输是通过SSH
加密的,所以必须要让github
仓库认证你SSH key
,在此之前,必须要生成SSH key
第1步:创建SSH Key
。
在windows
下查看c盘->用户->自己的用户名->.ssh
下是否有id_rsa
、id_rsa.pub
文件,如果没有需要手动生成。打开git bash
,在控制台中输入以下命令。
1 | $ ssh-keygen -t rsa -C "youremail@example.com" |
密钥类型可以用 -t
选项指定。如果没有指定则默认生成用于SSH-2
的RSA
密钥。这里使用的是rsa
。
同时在密钥中有一个注释字段,用-C
来指定所指定的注释,可以方便用户标识这个密钥,指出密钥的用途或其他有用的信息。所以在这里输入自己的邮箱或者其他都行。
输入完毕后程序同时要求输入一个密语字符串(passphrase
),空表示没有密语。接着会让输入2次口令(password
),空表示没有口令。3次回车即可完成当前步骤,此时c盘>用户>自己的用户名>.ssh
目录下已经生成好了。
JQuery
?JQuery
是一个优秀的javascript
框架。
JQuery
是继Prototype
之后又一个优秀的Javascript
框架。其宗旨是——WRITE LESS,DO MORE
,写更少的代码,做更多的事情。它是轻量级的js
库,这是其它的js
库所不及的,它兼容CSS3
,还兼容各种常用浏览器。
JQuery
是一个快速的,简洁的JavaScript
库,使用户能更方便地处理HTMLdocuments
、events
、实现动画效果,并且方便地为网站提供 AJAX 交互。
JQuery
还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择。JQuery
能够使用户的html
页保持代码和html
内容分离,也就是说,不用再在html
里面插入一堆js
来调用命令了,只需定义id
即可。
javascript
的typeof
返回哪些数据类型object
number
function
boolean
underfind
string
1 | typeof null;//object |
parseInt
,parseFloat
,Number()
)==
)1==”1”//true
null==undefined//true
split()
join()
的区别