日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

JavaScript-- 基础知识面试题

發布時間:2024/1/8 javascript 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JavaScript-- 基础知识面试题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.JavaScript語言特點

  1.弱類型,數據類型由數據的值決定

  2.解釋性腳本語言--解釋器是JS引擎 是瀏覽器的一部分

  3.運行在客戶端瀏覽器上

  4.有事件驅動機制(按下鼠標,移動窗口等)

  5.與操作系統無關,跨平臺語言

2.盒子模型

  標準盒子模型:左右margin+左右padding+左右border+width

  IE盒子模型:左右margin+width(包括padding和border)

3.CSS Sprite 是一種網頁圖片應用處理技術,將一個頁面需要用到的圖片整合成一張或少張圖片 以此來減少網頁的HTTP請求,提高性能,這是它最大的優點

  使用方法 設置其為background-img:url(),設置其定位:background-position:x,y

  它的優點:減少網頁的http請求 提升性能

       減少了圖片的字節,多張圖片合成一張圖片的字節小于多張圖片的總和

       減少了命名困擾,只需對一張集合的圖片命名,提高制作效率

       更換風格方便,只需在一張或少張圖片上修改圖片的顏色或樣式

  它的缺點:合成麻煩

4.link和@import的區別

  1.link屬于HTML標簽,而import是css提供的

  2.頁面加載時,link會被同事加載,而@import引用的css樣式會后加載

  3.link無兼容問題,而import只在IE5以上才能被識別到

  4.link的權重高于import

5.CSS中可以繼承的屬性有:font-size、color

5.在原型鏈上對數組去重

var a = 10;
function a(){
}
console.log(typeof a);

Array.prototype.unique1 = function (arr) {
var n = []; //一個新的臨時數組
for (var i = 0; i < this.length; i++) //遍歷當前數組
{
//如果當前數組的第i已經保存進了臨時數組,那么跳過,
//否則把當前項push到臨時數組里面
if (n.indexOf(this[i]) == -1) n.push(this[i]);
}
return n;
}
var arr = [2,5,8,7,4,9,5,6,1,2,5];
console.log(arr.unique1());

6.關于原型

function A(x){
this.x= x;
}
A.prototype.x = 1;
function B(x){
this.x= x;
}

B.prototype = new A();
var a = new A(2);
var b = new B();
console.log(a.x,b.x);//2 undefined

B的原型由A的構造函數創建 在A構造函數中 x這個屬性聲明且復制為undefined,當執行b.x 時先在對象中尋找x屬性值 若不存在則去原型中尋找

7.關于原型

var A = {n:4399};
var B= function(){this.n = 9999};
var C = function(){var n = 8888};
// 將B和C的原型都設置為A對象
B.prototype =A;
C.prototype = A;
var b = new B();
var c = new C();
// 對象A的屬性n++ n=4400
A.n++;
// 這是輸出b.n 會先去自己的對象中查找屬性 找到n=9999
console.log(b.n);
console.log(c.n);//對象沒有屬性 去原型中查找 n=4400

8.用for in 遍歷對象屬性時不僅遍歷對象本身的屬性和方法,同時會遍歷原型鏈上的屬性和方法

Object.prototype.bar = 1;

var foo = {moo : 2};

for(var i in foo){

  console.log(i);

}

9.函數執行后變量無返回值

var x = 1, y = z = 0;

function add(n) {

??? n = n+1;

}

y = add(x);//執行add 但函數并未return返回值,此時變量會被賦值為undefined

function add(n) {

??? n = n + 3;

}

z = add(x);//與y同理

10.下列代碼的輸出結果

alert(typeof(null)); ?//object

alert(typeof(undefined)); //undefined

alert(typeof(NaN)); ?//number

alert(NaN==undefined); //false NaN與任何數據類型比較結果都為false

alert(NaN==NaN); //false

var str="123abc";

alert(typeof(str++)); //number 會對str進行隱士轉換為Number 但是轉換失敗 所以類型為number 值為NaN

alert(str);//NaN

?

轉載于:https://www.cnblogs.com/blogzzy/p/11412079.html

總結

以上是生活随笔為你收集整理的JavaScript-- 基础知识面试题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。