javascript导出一个类

用 export , import 的时候,总是报错,说外部模块找不到。。

 

 

E:\project_ts\abc\main.js:1
import {Queue} from './Queue'
^^^^^^

SyntaxError: Cannot use import statement outside a module

 

 

 

 

 

摸索了半天,这种方式行得通。

 

// Queue.js


/**
 *封装一个队列的结构,提供若干操作队列的接口
 *
 *author:Henry
 *date:20200503
 * 
 */
class  Queue
{
    constructor()
    {
        this.queue = [];
    }
    enqueue = function(value)
    {
        this.queue.push(value);
    };

    dequeue = function()
    {
    return this.queue.shift();
    };

    peek = function()
    {
        return this.queue[0];
    };

    length = function()
    {
        return this.queue.length;
    };

    print = function()
    {
        console.log(this.queue.join(' '));
    };
}

function test1 ()
{
    console.log("test1");
}

exports.test1 = test1
exports.Queue = Queue

 

//  main.js

const ABC =  require('./Queue');


ABC.test1();

let que1 = new ABC.Queue();
que1.enqueue(1);
que1.enqueue(2);
que1.enqueue(3);
que1.enqueue(4);
que1.enqueue(5);
que1.print();

在webStrom里面,运行 main.js 正常。

可与访问到外部的js文件定义的类、方法。

 

posted @ 2020-05-03 15:16  He_LiangLiang  阅读(3524)  评论(0编辑  收藏  举报