重學javascript基礎 typeof

2021-09-24 06:54:03 字數 1282 閱讀 4990

js 中變數是沒有型別的,在做typeof操作時,得到的結果不是該變數的值,而是該變數持有的值的型別

檢測乙個變數的型別 typeof
let foo = null;

// null 在js中是乙個假值

console.log(!foo&&typeof foo === 'object'); // true

console.log(foo===null); // true

console.log(object.prototype.tostring.call(foo)==="[object null]"); // true

// object.prototype可用來檢測任何型別 返回值為"[object 型別(eg:null,array,number,string,undefined,symbol,function,object,boolean)]"

// 檢測函式

function

fn()

console.log(typeof fn); // function

// 以宣告未賦值 undefined

let a; // let 在同一作用域內不可重複宣告

console.log(typeof a); // undefined;

// 檢測數值

let b = 12;

console.log(typeof b); // number;

// 檢測字串

let c = "string";

console.log(typeof b); // string;

// 檢測symbol

let d = new

symbol(1);

console.log(typeof d); // symbol;

// 檢測boolean

let flag = true;

console.log(typeof flag); // boolean

複製**

使用typeof的安全防範機制來檢查變數
if(debug)

if(debug!==undefined)

// 可以使用window.debug來做這種容錯,鑑於只有瀏覽器環境有window,故使用typeof 更為明智

複製**

ps: typeof返回值的型別是string -----> typeof typeof s ==="string" //true

重學前端系列 Javascript物件

我們可以使用getownpropertydescriptor來檢視屬性狀態 var o o.b 2 a 和 b 皆為資料屬性 object.getownpropertydescriptor o,a object.getownpropertydescriptor o,b 複製 如果想改變屬性的特徵或者...

重學Git 基礎命令篇

1.git commit 在提交樹中增加乙個提交節點,注意 分支是指向提交節點的。2.git branch newimage 表示建立乙個名為newimage的分支。3.git checkout newimage 表示切換到newimage分支。星號表示當前所在的分支。4.git checkout ...

javascript函式基礎 this基礎

this是函式體內自帶的乙個物件指標,它能夠始終指向呼叫物件 這個this代表的物件由this所在的執行作用域決定的,而不是根據this所在的定義作用域決定。this 屬性 如果this未包含屬性,則直接傳遞的是當前物件 1.this代表當前操作物件 this即代表 物件input 2.this代表...