前端知識整理(一) 資料型別

2022-08-13 19:00:17 字數 1587 閱讀 3490

(以下是從各種**、同學處整理的前端實習面試題,答案也為自己整理,有錯誤的話歡迎指正)

答:①基本型別:undefined、null、string、number、boolean、symbol(es6)

其中分為普通基本型別和特殊基本型別:

普通基本型別:undefined、null、symbol

特殊基本型別:string、number、boolean

②引用型別:object、array、regexp、date、function

③不同:

基本型別

引用型別

④堆記憶體和棧記憶體

棧:連續儲存,大小固定。特殊地,null屬於object型別,表示乙個空指標物件,但是存在棧記憶體中。

堆:非連續的樹形儲存結構。特殊地,new乙個例項,生成的是乙個物件,即使

var foo = new string("123123")

var bar = string("123123")

console.log(a==b, a===b)

會輸出true false,能夠說明new的例項是物件。另外,

var foo = new string("123") var bar = new string("123") console.log(foo==bar, foo===bar)

會輸出false false,這是因為兩者都是儲存在堆記憶體中,但指標指向不一致。

⑤按值訪問和按引用訪問&&按引用比較

基本型別的值是不可變的,比如:

var a = 10;

var b =a;

a ++;

console.log(a);

//11

console.log(b); //

10

而引用型別的值可變,比如:

var a = [1,2,3];

var b =a;

b.push(4);

alert(b);

//[1,2,3,4]

alert(a); //

[1,2,3,4] 物件型別 : 賦值不僅是值的複製,而且也是引用的傳遞

var a = [1,2,3];

var b =a;

b = [1,2,3,4];

alert(b);

//[1,2,3,4]

alert(a); //

[1,2,3]

var person1 = '{}';

var person2 = '{}';

console.log(person1 == person2); //

true

var person1 ={};

var person2 ={};

console.log(person1 == person2); //

false

上面一段是字串之間的比較,而下面一段是物件之間的比較。至於false,這是因為引用型別時按引用訪問的,換句話說就是比較兩個物件的堆記憶體中的位址是否相同,那很明顯,person1和person2在堆記憶體中位址是不同的。

一 資料型別

資料超出最大值後得到最小值,超出最小值後得到最大值,本質上是位元組數的限制。char 1位元組,short 2位元組,int 4位元組,unsigned int 4位元組,long 4位元組,long long 8位元組,float 4位元組,double 8位元組 無符號資料範圍 0至2 位元組數...

Kotlin資料型別(一 資料型別)

一 boolean boolean型別有兩種型別的 true flase val a boolean true val b boolean false二 number資料型別 package net.println.kotlin author wangdong description number型...

c primer plus 一 資料型別

1.整數 1位元組 8bit 8bit 可以表示0 255或 128 127 short int long short short int long long int c 的標準 short 至少16bit int 至少與short一樣長 long 至少與int一樣長 float 不比double長...