====== JavaScript Globalオブジェクト ======
--- //[[http://www.y2sunlight.com/water|y2sunlight]] 2021-03-30//
===== 概要 =====
* JavaScriptのトップレベルのオブジェクトでグローバル変数とグローバス関数を保持する
* あらかじめ組み込まれているものとユーザ定義のものがある
* グローバルオブジェクトはWebブラウザ環境ではwindowオブジェクトと呼ばれる
// 例1
console.log(window.NaN); // 組み込みグローバル変数
console.log(window.String('Hello, World')); // 組み込みグローバル関数
// 例2
var myStrVar = 'myStrVar'; // グローバル変数(グローバルプロパティも作る)
myStr = 'myStr'; // グローバルプロパティ
console.log(window.myStrVar);
console.log(window.myStr);
// 例3
delete myStrVar; // NG プロパティでないのでdelete不可
delete myStr; // OK
\\
===== 組み込みGlobalオブジェクト =====
|プロパティ|[[https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/NaN|NaN]]|数値でない(Not a Number)|
|:::|[[https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Infinity|Infinity]]|無限大|
|:::|[[https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/undefined|undefined]]|未定義値|
|メソッド|[[https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/isFinite|isFinite(num)]]|有限値かどうか(NaN、正負の無限大でない)|
|:::|[[https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/isNaN|isNaN(num)]]|数値でない(Not a Number)かどうか|
|:::|[[https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Boolean|Boolean(val)]]|真偽型に変換|
|:::|[[https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Number|Number(val)]]|数値型に変換|
|:::|[[https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/String|String(val)]]|文字列型に変換|
|:::|[[https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/parseFloat|parseFloat(str)]]|文字列を浮動小数点に変換|
|:::|[[https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/parseInt|parseInt(str)]]|文字列を整数値に変換|
|:::|[[https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/encodeURI|encodeURI(str)]]|文字列をURIエンコード|
|:::|[[https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/decodeURI|decodeURI(str)]]|文字列をURIデコード|
|:::|[[https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/encodeURIComponent|encodeURIComponent(str)]]|文字列をURIエンコード|
|:::|[[https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/decodeURIComponent|decodeURIComponent(str)]]|文字列をURIデコード|
|:::|[[https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/eval|eval(exp)]]|式/値を評価|
\\
===== eval関数 =====
''eval'' 関数は指定された文字列を解釈/実行するグローバル関数です。
eval('console.log("Hello,World")');
var data = 'foo';
myFunc();
function myFunc() {
eval('var data = "bar"');
console.log(data);
}