前几天在诚品买的一本书《啊哈,灵机一动》其本身的内容还是很不错的,但是——我为什么又要说但是了呢——这本书的编辑实在是应该被拉出去枪毙20分钟!
Blog
-
Becoming Steve Jobs
这本书《Becoming Steve Jobs》比Isaacson的那本《史蒂夫·乔布斯传》要好看一些。主要原因是作者之一的Schlender采访乔布斯多年,手上累积了大量一手的资料,所以在选取时游刃有余,同时也因为他和其它与乔布斯同时代的IT巨擘有着良好的采访/被采访关系和/或私人关系,所以能从更多的角度、更多的来源对乔布斯进行描述。
[
-
学习了JavaScript中的reduce
之前一直没有认认真真地学习JavaScript(https://en.wikipedia.org/wiki/ECMAScript),因为一直只是将它作为在Web中进行编程,进行动态效果呈现的一个辅助脚本(我用jQuery比较多,还用过一段时间的Dart)。
这两天因为脚扭了在家里休息了几天,随手拿起《Eloquent JavaScript》就看几段,就顺手学习了一下JavaScript中的reduce。
完整的说明在这里。
按照定义,reduce对一个数组中的每个元素进行一个类似于“累加”的操作,将其规整到一个单一值。 它的完整语法如下:
arr.reduce(callback[, initialValue])而其中的callback函数,又可以最多有四个参数:
- previousValue
- currentValue
- index
- array
我们先看一个对数组中所有元素求和的例子:
var total = [0, 1, 2, 3].reduce( function(sum, current) { return sum+current; }); // total == 6这是一个非常直观的例子。 计算机程序求和总是用一个循环的方式。所以,“和”会保存在一个变量中,然后顺序一个元素一个元素的相加。
注意,由于我们没有给出initialValue,所以在第一次运行时,sum(作为previousValue)就会取数组的第一个数值0,而此时的currentValue就会是数组的第二个元素1。在这个程序中,这么做当然是没有问题的。 我们可以将这个程序等价地写作:
var total = [0, 1, 2, 3].reduce( function(sum, current) { return sum+current; }, 0); // total == 6此时我们显式地给予初始值为0(求和当然是如此),得到的结果是一致的。
第二个例子是将多维数组“压扁”成一维数组。这也可以用reduce来完成。
var arr=[[1,2,3],[4,5],[6,1]]; var x=arr.reduce( function(flat, current) { return flat.concat(current); }, []) );这里必须给定initialValue。
本文收录于[go4pro.org]
-
上海的房子出租了
在上海买了新房子后,老房子就出租了。
价格还不错。上海的租赁市场确实好活跃。佣金总共只收了0.7个月,相比24个月的租期,只有3%,虽然不是找的“佣金只收一个点”的中介公司,但是房客看上去不错,付款又爽快,签约租期也短,没啥可抱怨的。
这也意味着我们开始变成食利一族了吗?
-
王尔德之美
王尔德是我非常喜欢的作家。我收藏了他的代表作品:《道林·格雷的肖像》,《童话全集》,《不可儿戏》,《温德米尔夫人的扇子》,计四本。其中还有专门从新加坡带回来的。

一般人知道王尔德,总逃不开唯美主义(aesthetic)和同性恋。在《Universal Man》中,梅纳德和杰弗里、玛格丽特也都或多或少受到此人的影响。1895年王尔德受审之时,梅纳德12岁,正是男童懵懂发育的时候。梅纳德在其早年(伊顿公学和国王学院)的同性恋行为,很难说没有王尔德的影响。
这本传记取材详实,大量档案、当事人的回忆录(包括信件、电报)、其它人的传记作品都是这本传记的素材来源。



