安装rz/sz命令
1 | $ apt-get update |
权限
1 | $ chmod +x *.sh |
Object.create() 方法会使用指定的原型对象及其属性去创建一个新的对象。
Object.create(proto, [ propertiesObject ])
proto
一个对象,应该是新创建的对象的原型。
propertiesObject
可选。该参数对象是一组属性与值,该对象的属性名称将是新创建的对象的属性名称,值是属性描述符(这些属性描述符的结构与Object.defineProperties()的第二个参数一样)。注意:该参数对象不能是 undefined,另外只有该对象中自身拥有的可枚举的属性才有效,也就是说该对象的原型链上属性是无效的。
返回一个新对象。在指定原型对象上添加新属性后的新对象
如果 propertiesObject 参数不是 null 也不是对象,则抛出一个 TypeError 异常。
使用 Object.create 实现类式继承
1 | // Shape - superclass |
继承到多个对象,则可以使用混入的方式。
1 | function MyClass() { |
使用 Object.create 的 propertyObject 参数
1 | var o; |
call() 方法调用一个函数, 其具有一个指定的this值和分别地提供的参数(参数的列表)。
fun.call(thisArg[, arg1[, arg2[, …]]])
thisArg
在 fun
函数运行时指定的this值。需要注意的是,指定的this值并不一定是该函数执行时真正的this值,如果这个函数处于非严格模式下,则指定为null和undefined的this值会自动指向全局对象(浏览器中就是window对象),同时值为原始值(数字,字符串,布尔值)的this会指向该原始值的自动包装对象。
arg1, arg2, ...
指定的参数列表。
可以让call()中的对象调用当前对象所拥有的function。你可以使用call()来实现继承:写一个方法,然后让另外一个新的对象来继承它(而不是在新对象中再写一次这个方法)。
使用call方法调用父构造函数
1 | function Product (name, price) { |
使用call方法调用匿名函数
1 | var animals = [ |
使用call方法调用函数并且指定上下文的’this’1
2
3
4
5
6
7
8
9
10
11
function greet () {
var reply = [this.person, 'Is An Awesome', this.role].join(' ')
console.log(reply)
}
var i = {
person: 'Douglas Crockford', role: 'Javascript Developer'
}
greet.call(i)
apply() 方法调用一个函数, 其具有一个指定的this值,以及作为一个数组(或类似数组的对象)提供的参数。
fun.apply(thisArg, [argsArray])
thisArg
在 fun
函数运行时指定的this值。需要注意的是,指定的this值并不一定是该函数执行时真正的this值,如果这个函数处于非严格模式下,则指定为null和undefined的this值会自动指向全局对象(浏览器中就是window对象),同时值为原始值(数字,字符串,布尔值)的this会指向该原始值的自动包装对象。
argsArray
一个数组或者类数组对象,其中的数组元素将作为单独的参数传给 fun
函数。如果该参数的值为null 或 undefined,则表示不需要传入任何参数。
在调用一个存在的函数时,你可以为其指定一个 this 对象。 this 指当前对象,也就是正在调用这个函数的对象。 使用 apply, 你可以只写一次这个方法然后在另一个对象中继承它,而不用在新对象中重复写该方法。
apply 与 call() 非常相似,不同之处在于提供参数的方式。apply 使用参数数组而不是一组参数列表。apply 可以使用数组字面量,如 fun.apply(this, ['eat', 'bananas'])
,或数组对象, 如 fun.apply(this, new Array('eat', 'bananas'))
。
使用apply来链接构造器
1 | Function.prototype.construct = function (aArgs) { |
使用apply和内置函数
1 |
|
bind()方法创建一个新的函数, 当被调用时,将其this关键字设置为提供的值,在调用新函数时,在任何提供之前提供一个给定的参数序列。
fun.bind(thisArg[, arg1[, arg2[, …]]])
thisArg
当绑定函数被调用时,该参数会作为原函数运行时的 this 指向。当使用new 操作符调用绑定函数时,该参数无效。
arg1, arg2, ...
当绑定函数被调用时,这些参数将置于实参之前传递给被绑定的方法。
返回由指定的this值和初始化参数改造的原函数拷贝。
bind() 函数会创建一个新函数(称为绑定函数),新函数与被调函数(绑定函数的目标函数)具有相同的函数体(在 ECMAScript 5 规范中内置的call属性)。当新函数被调用时 this 值绑定到 bind() 的第一个参数,该参数不能被重写。绑定函数被调用时,bind() 也接受预设的参数提供给原函数。一个绑定函数也能使用new操作符创建对象:这种行为就像把原函数当成构造器。提供的 this 值被忽略,同时调用时的参数被提供给模拟函数。
1 | $ git config --global user.name "Administrator" |
1 | $ git config user.name "Listing" |
1 | $ git init # 创建版本库 |
slice方法将数组的一部分的浅拷贝返回到从头到尾选择的新的数组对象(不包括结束)。原始数组不会被修改。
1 | var a = ['zero', 'one', 'two', 'three'] |
arr.slice()
arr.slice(begin)
arr.slice(begin, end)
1 | // Using slice, create newCar from myCar. |
给定一个整数数组,返回两个数字的索引,使它们相加到一个特定的目标。
你可以假设每个输入都只有一个解决方案,而你可能不会使用相同的元素两次。
1 | 指定 nums = [2, 7, 11, 15], target = 9, |
1 | /** |
标签: Cmd-Markdown
使用 * 表示斜体和粗体。1
这是 *斜体*,这是 **粗体**。
示例:
这是 斜体,这是 粗体。
使用 === 表示一级标题,使用 — 表示二级标题。
示例:
1 | 这是一个一级标题 |
你也可以选择在行首加井号表示不同级别的标题 (H1-H6),例如:# H1, ## H2, ### H3,#### H4。
使用 [描述](链接地址) 为文字增加外链接。
示例:
这是去往 本人博客 的链接。
使用 * ,+ ,- 表示无序列表。
示例:
使用数字和点表示有序列表。
示例:
使用 > 表示文字引用。
示例:
野火烧不尽,春风吹又生。
使用 `代码` 表示行内代码块。
示例:
让我们聊聊 html
。
使用 四个缩进空格 表示代码块。
示例:
这是一个代码块,此行左侧有四个不可见的空格。
使用 ![描述](图片链接地址) 插入图像。
示例:
在编辑区任意行的列首位置输入以下代码给文稿标签:
标签: 数学 英语 Markdown
或者
Tags: 数学 英语 Markdown
使用 ~~ 表示删除线。
这是一段错误的文本。
支持四十一种编程语言的语法高亮的显示,行号显示。
非代码示例:
1 | $ sudo apt-get install vim-gnome |
Python 示例:
1 | @requires_authorization |
JavaScript 示例:
1 | /** |
项目 | 价格 | 数量 |
---|---|---|
计算机 | \$1600 | 5 |
手机 | \$12 | 12 |
管线 | \$1 | 234 |
名词 1
: 定义 1(左侧有一个可见的冒号和四个不可见的空格)
代码块 2
: 这是代码块的定义(左侧有一个可见的冒号和四个不可见的空格)
代码块(左侧有八个不可见的空格)
本站支持在 Markdown 语法中嵌套 Html 标签,譬如,你可以用 Html 写一个纵跨两行的表格:
<table>
<tr>
<th rowspan="2">值班人员</th>
<th>星期一</th>
<th>星期二</th>
<th>星期三</th>
</tr>
<tr>
<td>李强</td>
<td>张明</td>
<td>王平</td>
</tr>
</table>
值班人员 | 星期一 | 星期二 | 星期三 |
---|---|---|---|
李强 | 张明 | 王平 |
本站的图标系统对外开放,在文档中输入
<i class="icon-weibo"></i>
即显示微博的图标:
替换 上述 i 标签
内的 icon-weibo
以显示不同的图标,例如:
<i class="icon-renren"></i>
即显示人人的图标:
更多的图标和玩法可以参看 font-awesome 官方网站。
使用带有 [ ] 或 [x] (未完成或已完成)项的列表语法撰写一个待办事宜列表,并且支持子列表嵌套以及混用Markdown语法,例如:
- [ ] **Cmd Markdown 开发**
- [ ] 改进 Cmd 渲染算法,使用局部渲染技术提高渲染效率
- [ ] 支持以 PDF 格式导出文稿
- [x] 新增Todo列表功能 [语法参考](https://github.com/blog/1375-task-lists-in-gfm-issues-pulls-comments)
- [x] 改进 LaTex 功能
- [x] 修复 LaTex 公式渲染问题
- [x] 新增 LaTex 公式编号功能 [语法参考](http://docs.mathjax.org/en/latest/tex.html#tex-eq-numbers)
- [ ] **七月旅行准备**
- [ ] 准备邮轮上需要携带的物品
- [ ] 浏览日本免税店的物品
- [x] 购买蓝宝石公主号七月一日的船票
对应显示如下待办事宜 Todo 列表:
1 | $ apt-get update |
1 | $ :set nu |
1 | $ :10,20s/^/#/g #查找替换 表示将10-20行添加注释 |
1 | $ :10,20s/^#//g #查找替换 表示将10-20行取消注释 |
按v进入visual状态,选择多行,用>或<缩进或缩出
1 | $ :32,65d # 删除多行 |
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.
1 | $ hexo new "My New Post" |
More info: Writing
1 | $ hexo server |
More info: Server
1 | $ hexo generate |
More info: Generating
1 | $ hexo deploy |
More info: Deployment
tag:
缺失模块。
1、请确保node版本大于6.2
2、在博客根目录(注意不是yilia根目录)执行以下命令:
npm i hexo-generator-json-content --save
3、在根目录_config.yml里添加配置:
jsonContent: meta: false pages: false posts: title: true date: true path: true text: false raw: false content: false slug: false updated: false comments: false link: false permalink: false excerpt: false categories: false tags: true