このようなオブジェクトがあって
var obj1 = {en: "english", ja: "japanese"};
var obj2 = {fr: "french", it: "italian"};
var obj3 = {ko: "korean", de: "deutschland"};
このようにひとつにまとめたい
{"en":"english","ja":"japanese","fr":"french","it":"italian","ko":"korean","de":
"deutschland"}
.gsファイル内ではエラーが出て使えませんが、HTML ServiceのJavaScriptでは使えたため備忘録として
.gsファイル内で使うときに出るエラー
TypeError: オブジェクト function Object() { [native code for Object.Object, arity=1] } で関数 assign が見つかりません。
コード.gs
function doGet() {
return HtmlService.createHtmlOutputFromFile("index");
}
|
意訳この機能がやること 指定したHTMLファイルを表示する |
index.html
<!DOCTYPE html>
<html>
<body>
<script>
obj_assign();
function obj_assign() {
var obj1 = {
en: "english",
ja: "japanese"
};
var obj2 = {
fr: "french",
it: "italian"
};
var obj3 = {
ko: "korean",
de: "deutschland"
};
var obj = Object.assign(obj1, obj2, obj3);
alert([JSON.stringify(obj), JSON.stringify(obj1), JSON.stringify(obj2), JSON.stringify(obj3)]);
}
</script>
</body>
</html>
|
意訳obj_assign()を実行する この機能がやること 1つめのオブジェクト 2つめのオブジェクト 3つめのオブジェクト obj1にobj2とobj3をマージして obj, obj1, obj2, obj3の中身をアラートに出す |