前端筆記——JS基礎(變量類型和計算)

JavaScript基礎——變量類型和計算

q:JS中使用 typeof 的類型?

  • 基本類型
`undefined` `null` `boolean` `number` `string`
  • 引用類型
`object`
  `對象` `數組` `函數`
typeof undefined; //undefined
  typeof 'abc'; //string
  typeof 123; //number
  typeof true; //boolean
  typeof {}; //object
  typeof []; //object
  typeof null; //object 引用類型
  typeof console.log; //function
  //typeof 只能區分基本類型,沒法區分對象、數組、null這三種引用類型

q:什麼時候使用 === 什麼時候使用 ==

//字符串拼接類型轉換
  var a = 100 + 10 //110
  var b = 100 + '10' //10010
// ==號
  100 == '100' //true
  0 == '' //true
  null == undefined //true
//if語句
  var a = true;
  if (a) {
    //
  }
  var b = 100;
  if (b) {
    //b=true
  }
  var c = '';
  if (c) {
    //c=false
  }
//邏輯運算符
  console.log(10 && 0) // 0
  console.log('' || 'abc') // 'abc'
  console.log(!window.abc) // true (當window.abc=undefined時)
  // 判斷一個變量是被當作 `true` 仍是 `false`
  var m = 100;
  console.log(!m) //false
  console.log(!!m) //true
// a:
  if (obj.a == null) {
    // 至關於obj.a=== null||obj.a=== undefined,簡寫形式
    // 這是jquery源碼中推薦的寫法
    // 其餘狀況所有使用 `===`
  }

q:JS中有哪些 內置函數 -數據封裝類對象

Object
Array
Boolean
Number
String
Function
Date
RegExp
Error

q:JS按照 存儲方式 區分爲哪些類型,並描述其特色

//值類型
  var a = 10;
  b = a;
  a = 11;
  console.log(b) //10
  //複製不會相互干預
  ** ** ** ** ** ** ** ** ** *
  //引用類型
  var obj1 = { x: 100 };
  var obj2 = obj1;
  obj1.x = 200;
  console.log(obj2.x); //200
  // 複製是引用類型的指針,會相互干預

q:如何理解 JSON

// JSON只不過是一個內置的JS對象而已
  // JSON也是一種數據格式
  JSON.stringify({ a: 100, b: 200 }); // "{"a":100,"b":200}"
  JSON.parse('{"a":100,"b":200}'); // {a:100,b:200}
相關文章
相關標籤/搜索