Rockjins Blog

Mad World


  • 首页

  • 分类

  • 归档

  • 标签

  • 搜索

几分钟帮你理解对象的基本特性之一:多态

发表于 2017-01-16 | 分类于 Technology | 阅读次数

多态不是简单两句话可以讲清楚,但至少能让你明白它是什么。

简单解释多态

拆分一下多态的英文:Polymorphism 就是 poly(复数) + morph(形态) + ism,也就是多种形态。

在JavaScript中,我们可以这样去理解多态:同一操作作用在不同的对象上,可以产生不同的解释和不同的执行结果。

更简单一些说:给不同对象发送同一消息,可能会得到不同的反馈。

举个🌰栗子

Freak是一位吉他手,Alex是一名主唱,当他们听到鼓点响起时,Freak会开始弹吉他,Alex会开始演唱。

同样一个鼓点,但Freak和Alex做的事是不同的。

阅读全文 »

『翻译』如果让海明威写JavaScript

发表于 2017-01-05 | 分类于 Translation | 阅读次数

原文链接:http://byfat.xxx/if-hemingway-wrote-javascript

在写第一行代码很久以前,我就酷爱文学。现在,我写JavaScript,不计其数。我正在写一本关于JavaScript的书。

JavaScript凭啥能吸引那么多文艺青年?说到它有限的语法所具备的表达潜能,我倒是有几点不成熟的想法,不过那是另外一个话题了。哎,如果那些大作家都喜欢上JavaScript,会咋样?你说他们会用JavaScript写出点什么东西来?作为海明威的十足拥趸,我的第一反应也是这老爷子不可能喜欢编程序(包括程序员)。话虽如此,我还是愿意相信在对它的各种非议中,其实潜藏着足以打动人心的一点:它是一门很文艺的语言,你说呢?它表面上简单粗陋、平淡无奇,而实质上却引人入胜、内涵十足。

代码审查之母

阅读全文 »

oh-my-zsh中git常用命令

发表于 2017-01-04 | 分类于 Technology | 阅读次数

自己常用的几个命令 希望能帮到你

Alias Command
ga git add
gcmsg git commit -m
gp git push
gl git pull
gst git status
gd git diff
gm git merge
gb git branch
gco git checkout
阅读全文 »

台湾和大陆不一样的术语称呼

发表于 2017-01-02 | 分类于 Book | 阅读次数

买了本湾湾翻译的书来看,真想说台湾话真是狗屎,但真正从历史上来说,简体中文才是狗屎

整理了一下台湾和大陆一些不一样的术语,读起来简直痛苦

台湾 大陆
物件 对象
函式 函数
变数 变量
阵列 数组
正规 正则
特性 属性
程式 程序
字串 字符
注解 注释串
宣告 声明
引数 参数
型别 类型
迴圈 循环
实体 实例
范畴 作用域
呼叫 调用
自由 自动
建置 构建
资料 数据
剖析 解析
实作 操作
参考 指针
标记 标签(元素)
伺服器 服务器
建构器 构造器
程式码 代码
运算式 表达式
指令稿 脚本
字面值 字面量
识别字 关键字
运算子 运算符
物件导向 面向对象
阅读全文 »

2016 我的书单

发表于 2017-01-01 | 分类于 Book | 阅读次数

2017来了,整理下过去一年的书单

JavaScript语言精粹 – Douglas Crockford

JavaScript这门语言是伟大的,但同样也有许多让人诟病的地方,这本书告诉你哪些是JavaScript的精粹,我们应该去使用;哪些是毒瘤,尽量避开它们。从而有效保证我们的代码质量。

JavaScript高级程序设计 – Nicholas C.Zakas

这本书应该不用过多介绍了,之前断断续续的看过里面的一些章节,今年花了一个月的时间,把这本书从头到尾读完了。

相比犀牛书,这本书读起来不会那么枯燥,不仅仅是工具书,里面也涉及了很多实际开发会遇到的问题,圣经级别的。

阅读全文 »

『翻译』Socket.IO聊天室程序(官方示例)

发表于 2016-12-26 | 分类于 Translation | 阅读次数

官方最新版的示例翻译 阅读原文

开始创建:聊天室程序(Get Started: Chat application)

在这个教程中,我们将会创建一个基本的聊天室程序。它几乎不需要你懂得多少Node.js和Socket.IO的知识,所以,这个教程适用于各个技术水平的开发人员。

介绍(Introduction)

使用LAMP(PHP)这种传统的技术栈去编写一个流行的聊天室程序是很困难的。它包括了服务器的轮询,跟踪时间戳,用它们去做这些会耗费你很多时间。

一直以来,sockets都是即时聊天系统的架构解决方案,它提供一个双向的通讯通道在客户端和服务器之间。

这意味着服务器可以推送消息到客户端。无论你何时发送聊天信息,我们都希望服务器获取到它,并把它推送到其他连接服务器的客户端上。

阅读全文 »

使用内联函数进行递归

发表于 2016-12-19 | 分类于 Technology | 阅读次数

我曾经以为匿名函数就是匿名函数,事实上,匿名函数就是匿名函数。

在JavaScript中实现递归有很多种方法,常见的有使用函数名调用自身、使用arguments.callee。

现在有这么一个例子,判断一个字符串是不是回文,返回’true’或’false’。

我们把递归函数赋值给一个对象的属性:

1
2
3
4
5
6
7
var JudgeTool = {
isPalindrome : function (text){
if (text.length <= 1) return true;
if (text.charAt(0) != text.charAt(text.length - 1)) return false;
return Judge.isPalindrome(text.subString(1,text.length - 2));
}
}

我们可以用一个回文字符串测试一下:

1
JudgeTool.isPalindrome("htmlmth"); //返回true
阅读全文 »

信仰有多重要?

发表于 2016-12-17 | 分类于 Mind | 阅读次数

生命对每个人都是公平的,因为洪流的终点都是死亡。

朋友,能否借用您漫长人生中短短的几分钟时间,咱们聊聊信仰有多重要?

我们不去给信仰定义,我只想请你坐下来思考一会,你所有烦恼的源头来自于何处?

我们来假设一下,你之所以烦恼是因为你觉得钱不够花。

我们不讨论怎么去赚更多的钱,而是假设你的钱可以满足你的一切欲望,好了,烦恼解决了。

但现实并不是这样的,你在获得这些钱的过程中,会经历很多事情,会去思考并去做很多肮脏和见不得人的事情。

最终,这些肮脏和见不得人的事将会陪伴你终生,与你长眠。

阅读全文 »

恶魔的呢喃

发表于 2016-12-12 | 分类于 Mind | 阅读次数

惰性就是你内心的恶魔,它在你耳边呢喃,放弃吧,你会过的很快乐。

恶魔

大概两年前,就有了想搭建个人博客的想法,当时想用HEXO+GitHub来做,可以想到,实践中会碰到很多问题,我前前后后花了一周时间,最后还是没有搭建出来。一直到两年后的今天,我才又着手去搭建博客。

我知道,不只是我,很多朋友都会有这种体验,学习一门新知识,然后碰到问题,去寻找答案,发现解决这个问题还要涉及到其他的知识。

这个时候你心里的那个恶魔就会出现,它会对你说:休息一会吧,你已经很努力了,就算学不会这些,你也一样可以过得很好。

其实想想,成功和失败,有时候就是因为自己一时的懒惰,在西方人看来,这就是被恶魔所打败。

阅读全文 »

Vue数据绑定隐藏的神坑....

发表于 2016-12-01 | 分类于 Technology | 阅读次数

出现问题是好的,那说明你在行动。

今天被Vue的一个坑给折磨了一天,终于发现是什么问题,我们先来模拟一个场景:
代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>vue</title>
</head>
<body>
<div id="app">
<input type="text" v-model='sendJson.name'>
<button @click='showName'>打印输入框的值</button>
</div>
<script type="text/javascript" src='./vue.min.js'></script>
<script type="text/javascript">
new Vue({
el:'#app',
data(){
return{
sendJson:{}
}
},
methods:{
showName(){
console.log(this.sendJson.name)
}
}
});
</script>
</body>
</html>

我们进页面就点按钮,你猜会输出什么?

阅读全文 »
1…456
余震

余震

Teenager Dream Of Freedom

57 日志
7 分类
45 标签
RSS
GitHub Weibo
© 2016 - 2017 余震
由 Hexo 强力驱动
主题 - NexT.Pisces