gpt4 book ai didi

javascript - 在 JS 中存储函数的值

转载 作者:行者123 更新时间:2023-11-28 15:59:02 25 4
gpt4 key购买 nike

所以,我在保留函数的值时遇到了麻烦。

var A4 = 0;
var A1 = 1;
var A2 = 2;
var A3 = 3;
var ROW1 = [A1, A2, A3, A4];
function contains(a, obj) {
var i = a.length;
while (i--) {
if (a[i] === obj) {
return true;
}
}
return false;
}

与给定变量一起使用时,此函数可接受的值为 4。

var InRow = function(cell, row) {
cell = 1;
if (contains(row, cell)) {
cell = 2;
if (contains(row, cell)) {
cell = 3;
if (contains(row, cell)) {
cell = 4;
if (contains(row, cell)) {
return false;
} else {
cell = 4;
}
} else {
cell = 3;
}
} else {
cell = 2;
}
} else {
cell = 1;
}
console.log(cell)

console.log 给出了可接受的值,四。

};
InRow(A4, ROW1);
console.log(A4);

但是,无论如何,这个值都为 0。

我想知道是否有任何方法可以存储第二个函数的值以供以后使用?即,使第二个 console.log 返回 4。

最佳答案

不能直接返回值吗?或者我错过了什么?

var InRow = function(cell, row) {
cell = 1;
if (contains(row, cell)) {
cell = 2;
if (contains(row, cell)) {
cell = 3;
if (contains(row, cell)) {
cell = 4;
if (contains(row, cell)) {
return false;
} else {
cell = 4;
}
} else {
cell = 3;
}
} else {
cell = 2;
}
} else {
cell = 1;
}
return cell;
}

然后:

var cell = InRow(A4, ROW1);
console.log(cell);

另外,将 A4 传递到函数中然后用值 1 覆盖它有什么意义?您可以将整个事情重写为这个,它将具有相同的效果。

var InRow = function(row) {
var cell = 1;
if (contains(row, cell)) {
cell = 2;
if (contains(row, cell)) {
cell = 3;
if (contains(row, cell)) {
cell = 4;
if (contains(row, cell)) {
return false;
} else {
cell = 4;
}
} else {
cell = 3;
}
} else {
cell = 2;
}
} else {
cell = 1;
}
return cell;
}

var cell = InRow(ROW1);
console.log(cell);

关于javascript - 在 JS 中存储函数的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17636621/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com