【问题标题】:Test.js is not passing the destructing ES6 programTest.js 没有通过破坏性的 ES6 程序
【发布时间】:2020-01-24 05:48:01
【问题描述】:

我正在尝试编写一个简单的解构程序,在hackerrank 中分配数组值,但每次我得到一个没有错误语句的npm 错误(只有这个-该文件是一个常见的js 模块)

var states = ['ABC', ['XYZ', 'UVW']];
let [A,B]= states;
console.log(A);
console.log(B);

exports(states);

输出应仅为 [ 'ABC' ] 和 [ 'XYZ', 'UVW' ]。

如果这个程序在 Hackerrank 上运行时有任何问题,谁能给我一个想法。

【问题讨论】:

  • 您是否尝试过更新状态变量,例如[['ABC'], ['XYZ', 'UVW']]
  • exports(states) 没有任何意义。 exports 不是函数。它是一个对象。如果您使用的是 commonJS 模块,那么如果您尝试导出 states 对象,则可以使用 module.exports = states。除非您没有运行足够新的 node.js 版本来支持解构,否则我认为您的解构没有任何问题。
  • 另外,如果您需要有关错误的帮助,那么您需要准确地向我们展示您得到的输出/错误。此外,也不清楚为什么 NPM 会参与其中。您可以使用node test.js 运行它。
  • 大部分导出部分已经是hackerrank编辑器下给出的环境的一部分,我还写了其他代码sn-ps,它们工作了。它只是代码,它是如何执行的,而不是测试 JS 标准,
  • 大多数情况下,我得到一个断言错误:AssertionError [ERR_ASSERTION]">

标签: javascript node.js ecmascript-6


【解决方案1】:

const states = [['Tamilnadu'], ['Punjab', 'Haryana']]; 让 [Chennai ,Chandigarh]= 州;

module.exports = {钦奈,昌迪加尔};

【讨论】:

    【解决方案2】:

    两件事:

    1. 如果你在node,那么应该是module.exports = states;

    2. 输出将是: 'ABC' 和 ['XYZ', 'UVW']

    states 的第一个值是一个字符串,第二个值是一个数组。这就是你将分别为 A 和 B 得到的。

    【讨论】:

    • 是的,即使我将第一个放在数组中,我也能正常获得输出,但我猜错误更多是从 commonjs 转换为 ES6。不过,我会得到一些关于它的信息
    【解决方案3】:

    应该是这样的

    var states = [];
    var [Chennai, Chandigarh] = [[ 'Tamilnadu' ], [ 'Punjab', 'Haryana' ]];
    module.exports = {states: [Chennai, Chandigarh]};
    

    【讨论】:

      【解决方案4】:

      试试这个

      var states = [['ABC'], ['XYZ', 'UVW']];
      let [A,B]= states;
      console.log(A);
      console.log(B);
      
      module.exports = {A,B};
      

      【讨论】:

        【解决方案5】:
            var states = [['ABC'], ['XYZ', 'UVW']];
        let [A,B]= states;
        console.log(A);
        console.log(B);
        
        module.exports = {states};
        

        这是更新后的代码,仍然报错

        【讨论】:

        • 为什么要发布对您自己问题的答案只是为了说明问题仍然存在?谁会赞成这个?这个答案应该被删除。如果您对问题有更新,请将其发布在问题中,以便所有读者看到相同的问题陈述。
        【解决方案6】:
        var states = [['Tamilnadu'], ['Punjab', 'Haryana']];
        
        const [Chennai, Chandigarh] = states;
        
        module.exports = {Chennai,Chandigarh}
        

        试试这个。

        【讨论】:

        • 如果这项工作添加您的评论
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-10-17
        • 1970-01-01
        • 1970-01-01
        • 2013-09-15
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多