这里的一切都很新,我知道我的问题必须非常简单,但是对于我的一生,我无法弄清楚!
我最近购买了Jon Duckett的“ Javascript&JQuery”(顺便说一句,我很喜欢)。但是,当本书开始使用函数时,特别是从第95页的函数中获取多个值时,将使用以下示例:
function getSize(width, height, depth) {
var area = width * height;
var volume = width * height * depth;
var sizes = [area, volume];
console.log(sizes);
}
var areaOne = getSize(3, 2, 3)[0];
var volumeOne = getSize(3, 2, 3)[1];
每当我在浏览器中运行此命令时,都会收到一条错误消息,指出“未捕获的TypeError:无法读取未定义的属性'0'。”
如果有人可以向我解释,或者为我指明了正确的方向,为什么使用该方法从函数调用数组中的索引对我不起作用。我只想知道为什么书中的这个例子不起作用。
预先感谢您,感谢您到目前为止我从使用此站点中学到的所有知识。
答案 0 :(得分:3)
您缺少从函数返回数组结果
function getSize(width, height, depth) {
var area = width * height;
var volume = width * height * depth;
var sizes = [area, volume];
return sizes;
}
var areaOne = getSize(3, 2, 3)[0];
var volumeOne = getSize(3, 2, 3)[1];
console.log(areaOne,volumeOne);
答案 1 :(得分:0)
您的函数未返回代码所期望的任何内容:添加return语句。
function getSize(width, height, depth) {
var area = width * height;
var volume = width * height * depth;
var sizes = [area, volume];
console.log(sizes);
return [area,volume,sizes];
}
var areaOne = getSize(3, 2, 3)[0];
var volumeOne = getSize(3, 2, 3)[1];