js判斷一個變數是否已經宣告或者宣告未賦值
一個變數無非由三種狀態:
1.變數沒有宣告。
2.變數宣告未賦值。
3.變數宣告且賦值。
在網上有一段比較常用的程式碼,如下:
[JavaScript] 純文字檢視 複製程式碼if(typeof(a)=='undefined'){ var a="antzone"; }
但是上面的程式碼只能夠判斷並不能明確區分變數是否是未宣告還是宣告未賦值,因為如果變數宣告和變數宣告未賦值,typeof運算子的返回值都是undefined。下面是一段能夠實現此功能的程式碼,如下:
[JavaScript] 純文字檢視 複製程式碼function func(){ if(typeof(v)=='undefined'){ try{ if(v==null)//說明v是已宣告未賦值 v=1; //如果v是全域性變數,這樣不會改變它的作用域 } catch(err){//說明v是未宣告 eval('var v');v=2; //這裡不一樣 } } console.log(v); } func();
相關文章
- js如何判斷一個變數是否宣告並賦值JS變數賦值
- javascript如何判斷一個變數是否宣告JavaScript變數
- js如何判斷一個變數是否具有值JS變數
- js如何判斷一個變數是否有值JS變數
- js如何判斷一個變數值是否為undefinedJS變數Undefined
- JavaScript 同時宣告多個變數並賦值JavaScript變數賦值
- js判斷一個變數是否為空JS變數
- go語言變數的宣告與賦值Go變數賦值
- js如何判斷一個變數是否是一個數字JS變數
- js如何判斷一個變數是否是undefinedJS變數Undefined
- js 判斷兩個變數是否相等JS變數
- JS變數宣告和函式宣告提升JS變數函式
- js判斷一個變數是否為字串型別JS變數字串型別
- javascript判斷一個變數是否存在JavaScript變數
- <Python>判斷變數是否是DataFrame 或者 SeriesPython變數
- js宣告全域性變數JS變數
- 深入解析JS變數宣告和函式宣告提升JS變數函式
- 淺談JS變數宣告和函式宣告提升JS變數函式
- javascript判斷一個變數是否是數字JavaScript變數
- golang 快速入門 [8.1]-變數型別、宣告賦值、作用域宣告週期與變數記憶體分配Golang變數型別賦值記憶體
- es6學習筆記整理(一)變數宣告、解構賦值筆記變數賦值
- Kotlin 變數詳解:宣告、賦值與最佳實踐指南Kotlin變數賦值
- javascript如何判斷一個變數是否是整數JavaScript變數
- javascript如何判斷一個變數是否是undefinedJavaScript變數Undefined
- 判斷一個物件是否為空物件,判斷一個物件中是否有空值物件
- JS如何判斷一個陣列是否為空、是否含有某個值JS陣列
- linux 中如何判斷變數是否為數值Linux變數
- JavaScript判斷兩個變數是否相等JavaScript變數
- C#判斷一個字串是否是數字或者含有某個數字C#字串
- js如何判斷頁面是否已經載入完成JS
- TypeScript 變數宣告TypeScript變數
- JavaScript 宣告變數JavaScript變數
- javascript變數賦值或者重新賦值注意事項JavaScript變數賦值
- javascript判斷變數是否是數值型別程式碼JavaScript變數型別
- js如何判斷一個引數是否是陣列JS陣列
- 判斷一個類名或者元素是否存在的思路
- 原生js 判斷變數是一個陣列JS變數陣列
- 如何判斷一個值是否等於NaNNaN