javascript - 我在 javascript 中的循环代码给出了“内存不足”错误
问题描述
我正在学习 Javascript,而我正在制作一个循环代码,其中数组“tomultiply”中的每个元素都与自身和其他元素相乘,并将答案存储在数组“multiplelist”中。但是运行我的代码总是给我一个“内存不足”的错误。如果愿意,请纠正我的代码。您最好了解我正在采取的方法并按原样纠正它。谢谢你。
var multiplelist = [];
var tomultiply = [2, 3, 12, 8, 9];
var primary;
var secondary = 0;
var n = 0;
for (primary = tomultiply[n] ; primary = tomultiply[tomultiply.length - 1]; primary = tomultiply[n++]) {
for (secondary = tomultiply[n] ; secondary = tomultiply[tomultiply.length - 1]; secondary = tomultiply[n++]) {
var operation = primary * secondary;
multiplelist.push(operation);
}
}
console.log(multiplelist)
解决方案
您应该在 for 循环的第二个参数中使用条件而不是赋值。
如果我理解您的代码的意图,我希望下面的代码对您有用。
var multiplelist = [];
var tomultiply = [2, 3, 12, 8, 9];
var primary;
var secondary = 0;
var n = tomultiply.length;
for (let i = 0, primary = tomultiply[0] ; i < n; primary = tomultiply[++i]) {
for (let j = 0, secondary = tomultiply[0] ; j < n; secondary = tomultiply[++j]) {
var operation = primary * secondary;
multiplelist.push(operation);
}
}
console.log(multiplelist);
推荐阅读
- nativescript - 如何在 NativeScript 中隐藏 ScrollView 的滚动条?
- python - 用于heroku部署的pyqt4的正确whl文件是什么
- performance - x86 Windows/Linux 应用程序在最小化页数方面是否有性能提升?
- c# - 有没有混淆 .cmd 文件的方法?
- statistics - 什么统计测试使用 statsmodel 来计算显着性?
- javascript - 复合组件:如何在反应中引用点击的子元素?
- vue.js - VueJS 路由器 $routes.push 无法推送查询参数
- android - 如何通过主页按钮创建活动
- android - 当我单击按钮加载数据时出现运行时异常
- git - 在 git 中合并两个冲突的分支时,如何明确提及要应用哪些分支更改?