优 雅

追求优雅的代码


  • 首页

  • 关于

  • 标签

  • 分类

  • 归档

  • 搜索

关于递归函数的理解

发表于 2019-04-04

递归函数是在一个函数通过名字调用自身的情况下构成的,如下所示:

1
2
3
4
5
6
7
function factorial(num) {
if( num <= 1) {
return 1;
}else{
return num * factorial(num - 1);
}
}

这是一个经典的递归阶乘函数。虽然这个函数表面上看来没什么问题,但是下面的代码可能导致他出错。

阅读全文 »

关于 Object 和局部变量的理解

发表于 2019-03-28

在面试题中看到一个题目(如下)

1
2
3
4
5
6
7
8
function setN(obj){
obj.num='1';
obj = new Object();
obj.num = '2';
};
var per = new Object();
setN(per);
console.log(per.num); //1
阅读全文 »

JavaScript 分析代码

发表于 2019-03-26 | 分类于 面试题

1、Javascript中, 以下哪条语句一定会产生运行错误? 答案( )

A、var _变量=NaN;
B、var 0bj = [];
C、var obj = //;
D、var obj = {};

阅读全文 »

Hexo 常用命令笔记

发表于 2019-03-25 | 分类于 使用说明

常用

1
2
3
4
5
6
7
8
9
10
11
12
13
hexo n == hexo new "a new post"  新建文章,最好用双引号括起来

hexo g == hexo generate 生成静态文件到 public 文件夹

hexo s == hexo server Server at localhost:4000,根目录为 public

hexo d == hexo deploy 部署到远程服务里,例如 github

hexo p == hexo publish 新建草稿 draft

hexo clean 清除缓存文件

hexo new page "about" 生成 /source/about/index.md 文件
阅读全文 »

NVM 使用相关说明

发表于 2019-03-21 | 分类于 使用说明

一. nvm是什么

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 安装笔记

发表于 2019-03-21 | 分类于 使用说明

Cmder 安装笔记

Cmder 快捷键

右键管理

添加(方法一)

下载注册表文件cmder_context_enable.reg

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Windows 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\""

阅读全文 »

Sass 安装笔记

发表于 2019-03-21 | 分类于 使用说明

环境的配置

  1. 下载 Ruby

    安装在 c 盘 勾选

    自动配置环境变量

    打开

阅读全文 »

Git 中 SSH key 生成步骤

发表于 2019-03-21 | 分类于 使用说明

Git 中 SSH key 生成步骤

由于本地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

发表于 2019-03-21 | 分类于 JQuery

1.什么是JQuery?

  1. JQuery是一个优秀的javascript框架。

  2. JQuery是继Prototype之后又一个优秀的Javascript框架。其宗旨是——WRITE LESS,DO MORE,写更少的代码,做更多的事情。它是轻量级的js库,这是其它的js库所不及的,它兼容CSS3,还兼容各种常用浏览器。

  3. JQuery是一个快速的,简洁的JavaScript库,使用户能更方便地处理HTMLdocuments、events、实现动画效果,并且方便地为网站提供 AJAX 交互。

  4. JQuery还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择。JQuery能够使用户的html页保持代码和html内容分离,也就是说,不用再在html里面插入一堆js来调用命令了,只需定义id即可。

阅读全文 »

JavaScript 基础面试题

发表于 2019-03-21 | 分类于 面试题

二、JavaScript 基础

1、javascript的typeof返回哪些数据类型

  • object number function boolean underfind string
    1
    2
    3
    4
    5
    6
    7
    8
    typeof null;//object
    typeof isNaN;//function
    typeof isNaN(123);//boolean
    typeof [];//object
    Array.isArray(); //es5
    toString.call([]);//”[object Array]”
    var arr=[];
    arr.constructor;//Array

2、例举 3 种强制类型转换和 2 种隐式类型转换?

  • 强制(parseInt,parseFloat,Number())
  • 隐式(==)
    • 1==”1”//true
    • null==undefined//true

3、split() join() 的区别

  • split 是切割成数组的形式
  • join 是将数组转换成字符串
阅读全文 »
12
LeeXhuan

LeeXhuan

一名优雅的程序员

12 日志
3 分类
9 标签
© 2019 LeeXhuan 本站访客数: