首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >javascript,从js文件导入数组

javascript,从js文件导入数组
EN

Stack Overflow用户
提问于 2017-12-19 06:39:15
回答 3查看 5.7K关注 0票数 1

我正在尝试将数组从js文件导入到另一个js文件。例如,link

file1.js:

代码语言:javascript
复制
var array = ['one', 'two', 'three'];

file2.js:

代码语言:javascript
复制
import { array } from 'file1'

我的idle说“当前的Javascript版本不支持导入声明”。如何导入此数组?

感谢您的帮助

EN

回答 3

Stack Overflow用户

发布于 2017-12-19 06:41:08

正如您链接的文章中所提到的,ES6中提供了import

我认为您正在编写ES5 JavaScript,那么您将需要一个像Babel这样的ES6转译器。

https://codeburst.io/es5-vs-es6-with-example-code-9901fa0136fc

票数 2
EN

Stack Overflow用户

发布于 2017-12-19 07:47:23

importing只允许在ES6中使用,可以说是javascript的最新版本。浏览器现在才开始能够“理解”ES6,而且他们在一段时间内还不能完全理解它。目前,浏览器对javascript的前一个版本ES5理解得很好。既然是ES6,那么如何编写使用import的代码呢?

不幸的是,您需要一些特殊的工具来将您在ES6中编写的代码更改为ES5,以便浏览器能够理解您的代码。这被称为转译。到目前为止,名为Babel的工具是目前使用的最流行的转译器。但这还不是全部。您需要另一个工具来捆绑以ES6语法编写的模块。RollupjsWebpack是完成此任务的最流行的工具。

学习这些工具可能需要几个星期的阅读和尝试,所以不幸的是,我不能在这里用一个答案很好地解释它们,让您完全理解它们。基本上,使用捆绑所做的事情,使用您的示例:file1.jsfile2.js将被组合到一个最终文件bundle.js中,这是您将在html中包含<script src="bundle.js">的文件。file2.js称为模块。这个新功能如何帮助编写更好的代码?我们可以在模块中编写我们的大部分代码,然后在特定的页面上import我需要的任何模块。如果我在page1.html上需要一个倒计时定时器,我会创建一个包含倒计时定时器所需代码的模块,并import该倒计时定时器模块。如果我需要一个倒计时计时器在6个月后的新页面上,我会在这个新页面上import倒计时计时器模块。代码可重用性。

Webpack比Rollup更受欢迎,但我建议使用Rollup来很好地了解绑定器的实际功能。事实上,我们在我们的企业应用程序中使用Rollup,尽管我认为Webpack使用得更广泛,因为除了捆绑之外,它还做了很多事情。

注释:ES6并不是javascript的最新版本;我们已经有了ES7和ES8。事实上,官方的javascript语言还在不断地添加新的特性。问题是,浏览器实现(能够“理解”)这些新功能需要时间。

票数 2
EN

Stack Overflow用户

发布于 2017-12-19 06:51:25

我能想到的在ES5中复制这种行为的最好方法是创建一个带有脚本标记的iframe到您想要的文件。在加载时,您可以获取所需的变量并将其带到父窗口中。然后销毁iframe。

用法如下所示:

代码语言:javascript
复制
import('file-url', 'variable-name', function(imported){

});

实现应该是这样的:

代码语言:javascript
复制
function import(filePath, varName, callback){
    //create iframe
    //create script tag
    //add filepath and onload handler
    script.onload = function(){
        //retrieve variable and
        //trigger callback in parent
    };
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47877472

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档