Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/421.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript for循环中的实例化-js_Javascript - Fatal编程技术网

Javascript for循环中的实例化-js

Javascript for循环中的实例化-js,javascript,Javascript,我想在“headers”数组中按标题实例化一列,如下所示: column.js class Column{ constructor(column_name){ this.name = column_name } } index.js const Column = require('./Column.js') let columns = [] console.log(headers) // ['Name', 'Address', 'Phone'] headers.fo

我想在“headers”数组中按标题实例化一列,如下所示:

column.js

class Column{
   constructor(column_name){
      this.name = column_name
   }
}
index.js

const Column = require('./Column.js')

let columns = []

console.log(headers) // ['Name', 'Address', 'Phone']
headers.forEach( function(header){
   columns.push( new Column(`${header}`) )
})

console.log(columns) //[]

但是,当我检查Columns数组时,实际上没有列被实例化。不确定发生了什么或如何修复它。

请尝试将其放在
列的下面
类定义:

export default Column;
JS模块与Python模块不同,Python模块在最简单的调用中只允许导入整个文件的名称空间。相反,
import
只允许您查看已显式导出的值,有时您会发现自己进一步缩小了范围。查看文档:


在这种情况下,您应该看到
TypeError:Column不是构造函数
,这为您提供了检查在同一文件中定义
Column
时会发生什么情况的线索(另一个用户指出了这一点).

这看起来在很大程度上取决于
数组中的内容。我猜
是空的(很确定这也是Pointy的猜测)。这证实了代码是有效的,所以一定是上面注释中描述的问题,或者是您没有显示的其他代码。代码应该有效,请参阅检查您的
要求('./列'))//顺便说一句,这里不需要.js
@hinok有比发布屏幕截图更好的显示代码的方法:P