学习笔记(二十三):ArkTS语言-模块

概述:

程序可划分为多组编译单元或模块。

每个模块都有其自己的作用域,即,在模块中创建的任何声明(变量、函数、类等)在该模块之外都不可见,除非它们被显式导出。

与此相对,从另一个模块导出的变量、函数、类、接口等必须首先导入到模块中。

一、导出

可以使用关键字export导出顶层的声明。

未导出的声明名称被视为私有名称,只能在声明该名称的模块中使用。

复制代码
// 工具类
// 返回两个number之和
export  function getSum(x:number,y:number):number{
  return x+y
}
// number取反
export function getNegativeNum(x:number):number{
  return -x;
}
复制代码

 

二、导入

静态导入

导入声明用于导入从其他模块导出的实体,并在当前模块中提供其绑定。导入声明由两部分组成:

  • 导入路径,用于指定导入的模块;
  • 导入绑定,用于定义导入的模块中的可用实体集和使用形式(限定或不限定使用)。

导入绑定可以有几种形式。

1、导入绑定* as A表示绑定名称“A”,通过A.name可访问从导入路径指定的模块导出的所有实体

导入:
import * as mathUtils from '../utils/MathUtils'

使用:
mathUtils.getSum(1,2)
mathUtils.getNegativeNum(1)

 

 

2、导入绑定{ ident1, ..., identN }表示将导出的实体与指定名称绑定,该名称可以用作简单名称

导入:
import {getSum,getNegativeNum }  from '../utils/MathUtils'

使用:
getSum(1,2)
getNegativeNum(1)

 

posted @   听着music睡  阅读(30)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
历史上的今天:
2018-11-05 源码浅谈(二):java中的 Integer.parseInt(String str)方法
2015-11-05 Android项目实战(七):Dialog主题Activity实现自定义对话框效果
点击右上角即可分享
微信分享提示