Skip to content

Instantly share code, notes, and snippets.

@skysan87
Created November 19, 2018 12:15
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save skysan87/ccca4fd3ea2a0c6758723b2dca58f098 to your computer and use it in GitHub Desktop.
Save skysan87/ccca4fd3ea2a0c6758723b2dca58f098 to your computer and use it in GitHub Desktop.
ES module 基礎
let day = '日'
let week = '週'
let month = '月'
export {day, week, month}
// 変数の場合defaultは使用できない
export let year = '年'
let dayOfWeek
export default dayOfWeek = '曜日'
function sayHello(name) {
console.log(`Hello, ${name}`)
}
function getPrefix() {
return 'hello'
}
export {sayHello, getPrefix}
// 1ファイルにdefaultは1つまで
export default function(name) {
console.log(`Good morning, ${name}`)
}
export function sayEvening(name) {
console.log(`Good evening, ${name}`)
}
export class Human {
constructor(name) {
this.name = name
}
wonder() {
console.log(`${this.name}は訝しんだ`)
}
}
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<script type="module" src="./main.js"></script>
<title>ES module</title>
</head>
<body>
</body>
</html>
import { Human } from './human.js'
import defaultHello, { sayHello, sayEvening, getPrefix } from './helloUtil.js'
import dayOfWeek, * as Unit from './commonUnit.js'
const bob = new Human('bob')
function wonder() {
let jeff = new Human('jeff')
jeff.wonder()
}
function today() {
let prefix = getPrefix()
console.log(`${prefix}, 今日は 2018${Unit.year} 11${Unit.month} 18${Unit.day} 日${dayOfWeek}です`)
}
sayHello(bob.name) //Hello, bob
sayEvening(bob.name) //Good evening, bob
defaultHello(bob.name) //Good morning, bob
wonder() //jeffは訝しんだ
today() //hello, 今日は 2018年 11月 18日 日曜日です
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment