小编Tgr*_*lak的帖子

无法更改函数内的全局变量(Javascript)

我无法弄清楚为什么我的函数不会改变全局变量(arrayValue)它只在函数内部改变它,但我想在外面改变它.

function reverseArrayInPlace(arrayValue) {
  var newArr = [];
  for (var i = 0; i < arrayValue.length; i++) {
    newArr.unshift(arrayValue[i]);
  }
  arrayValue = newArr;
  return arrayValue;
}
var arrayValue = [1, 2, 3, 4, 5];
reverseArrayInPlace(arrayValue);
console.log(arrayValue); // It gives [1, 2, 3, 4, 5] instead of [5, 4, 3, 2, 1]
console.log(reverseArrayInPlace(arrayValue)); // It gives [5, 4, 3, 2, 1]
Run Code Online (Sandbox Code Playgroud)

javascript arrays global-variables

3
推荐指数
1
解决办法
1221
查看次数

Cucumber JS:如何在 Given/When/Then 步骤之外导出/更新全局变量?

我尝试更新/导出全局变量 (firstString) 以在“Then”步骤中使用和验证它。如何正确导出?当我这样做时, firstString 是未定义的。它仅在我在步骤中导出/导入它时才有效。如何全局更新它并在“Then”文件中使用它?

helpers.js:

let firstString;
Run Code Online (Sandbox Code Playgroud)

给定的.js:

let { firstString } = require('./helpers')

Given('I have first {string}', function (stringValue) {
    return stringRequest(stringValue).then(response => {
        firstString = response
    });
});

module.exports = { firstString }
Run Code Online (Sandbox Code Playgroud)

然后.js:

firstString = require('./helpers').firstString
Then('blablabla {string}', function (stringType) {
    console.log(firstString)
});
Run Code Online (Sandbox Code Playgroud)

javascript cucumberjs

1
推荐指数
1
解决办法
1578
查看次数

标签 统计

javascript ×2

arrays ×1

cucumberjs ×1

global-variables ×1