js面試題知識點全解 一變數型別和計算

2021-08-07 03:39:21 字數 3415 閱讀 5941

1.js中使用typeof能得到哪些型別

2.何時使用=====

3.js中的內建函式

4.js變數按儲存方式區分為哪些型別,並描述其特點

5.如何理解json

以下對這些問題的知識點做一些總結:

1.考點:js變數型別

1

typeof undefined //

undefined

2typeof 'killua' //

string

3typeof 215 //

number

4typeof

true

//boolean

5typeof {} //

object

6typeof //

object

7typeof

null

//object

8typeof console.log //

function910

//typeof運算子6種型別:

11//

undefined,string,number,boolean,object,function

12//

前4個是值型別,後4個是引用型別,typeof只能區分值型別的詳細型別,對引用型別無法區分,只能區分function型別

2.值型別:每個變數可以儲存自己的值,不會相互影響

var a=100;

var b=a;

a=200;

console.log(b);

//100

引用型別(物件,陣列,函式):可以無限擴張屬性,記憶體公用空間

var c=;

var d=c; //

age是乙份,只是d和c同時都指向它

d.age=20;

console.log(c.age);

//20

3.變數計算-強制型別轉換

//

1.字串拼接

var a=100+10//

110var b=100+'10'//

10010,number轉換為string

//2.運算子

100=='100'//

true

0==''//

true,都可以轉換為false

null==undefined //

true,都可以轉換為false

//if語句

var a=true

;

if(a)

var b=100;

if(b)

var c='';

if(c)

//邏輯運算子-與、或、非

console.log(10 && 0) //

0, 10轉換為true, true && 0返回0

console.log('' || 'abc') //

'abc', ''轉換為false

console.log(!window.abc) //

true, window.abc返回為undefined,非false為true

//判斷乙個變數會被當作true還是false

var cc=100;

console.log(!!cc);

4.變數計算-強制型別轉換

//

1.字串拼接

var a=100+10//

110var b=100+'10'//

10010,number轉換為string

//2.運算子

100=='100'//

true

0==''//

true,都可以轉換為false

null==undefined //

true,都可以轉換為false

//if語句

var a=true

;

if(a)

var b=100;

if(b)

var c='';

if(c)

//邏輯運算子-與、或、非

console.log(10 && 0) //

0, 10轉換為true, true && 0返回0

console.log('' || 'abc') //

'abc', ''轉換為false

console.log(!window.abc) //

true, window.abc返回為undefined,非false為true

//判斷乙個變數會被當作true還是false

var cc=100;

console.log(!!cc);

問:何時使用===和==

if(obj.a==null

)

問:js中的內建函式--資料封裝物件

object

array

boolean

number

string

function

date

regexp

error

問:js變數按儲存方式區分為哪些型別,並描述其特點

//

值型別,每個變數可以儲存自己的值,不會相互影響

var a=100;

var b=a;

a=200;

console.log(b);

//100

//引用型別(物件,陣列,函式),c和d同時指向age:10,

//可以無限擴張屬性,記憶體公用空間(如果屬性比較多,記憶體公用就會比較方便,所以要引用型別),互相會受干擾

var c=;

var d=c;//

age是乙份,只是d和c同時都指向它

d.age=20;

console.log(c.age);

//20

問:如何理解json

//

json 是內建在js語法裡的物件,也是一種資料格式,json有兩個api

json.stingify() //

把物件變換成字串

json.parse('') //

把字串變換成物件

js面試題知識點全解 一作用域

問題 1.說一下對變數提公升的理解 2.說明this幾種不同的使用場景 3.如何理解作用域 4.實際開發中閉包的應用 知識點 js沒有塊級作用域 只有函式和全域性作用域,如下 if true 同等於下面的 建議用下面方式寫 varname if true console.log name 列印出來k...

kafka高階知識點面試題

在老版本kafka中,訊息都是來一條傳送一條,這種方式會造成訊息傳送的吞吐量比較低,所以之後kafka對這種方式進行了優化,提供了批量傳送的方式,把多條訊息繫結成一批訊息傳送,以此來提高訊息傳送的吞吐率。這種方式就是緩衝池的思想,傳送訊息的邏輯大概如下 1 把訊息封裝成producerrecord物...

JS基礎知識點與常考面試題(一)

涉及面試題 原始型別有哪些?null是物件嗎?在js中原始的型別有6種,string number boolean null undefined symbol es6 首先原始型別儲存的值都是值,是沒有函式可以呼叫的,如undefined.tostring 此時可能會有乙個疑問,123 tostri...