首页 > JavaScript权威指南第6版中文版犀牛书.pdf的171/1018,书的页数是159,有一段js代码不对报错?

JavaScript权威指南第6版中文版犀牛书.pdf的171/1018,书的页数是159,有一段js代码不对报错?

var objects = [{x:1},{y:2},{z:3}];
var merged = objects.reduce(union); // =>{x;1,y:2,z:3}
alert(merged);

JavaScript权威指南第6版中文版犀牛书.pdf的171/1018,书的页数是159
有以上一段代码,用浏览器运行报错:

test.js:3 Uncaught ReferenceError: union is not defined

书里写不对吗?为什么?


补充我用的浏览器是:谷歌和搜狗


很明显你传了一个上下文没有的参数。。。
union is not defined


你是真的在认真看书吗?别说人家书的问题,要是有早就被发现了!不知道你怎么看的书。

考虑一下例 6-2 中的union函数.

而这里的union是书里作者自己定义的。

function extend(o, p) {
    for(prop in p) {                         // For all props in p.
        o[prop] = p[prop];                   // Add the property to o.
    }
    return o;
}

function union(o,p) { return extend(extend({},o), p); }


老外的书就是这样,给你举一个例子往往后面有多处要用到,不过书中应该是有说明的。

【热门文章】
【热门文章】