1.javaScript有哪幾種數據類型javascript
5種基礎數據類型 Number String Array Boolean Undefined java
1種複雜類型 Objectjquery
2.JavaScript中哪些爲真?哪些爲假?ajax
爲假的值正則表達式
'' 0 -0 false undefind null NaN數組
其餘的全部值都是真瀏覽器
3.計算如下運行結果oracle
1) alert(0/0); -->NaN app
//拓展 NaN != NaN //-->true infinity/infinity //-->NaN infinity-infinity //-->NaN
2) alert(1/0) ---->Infinitydom
3) var arr =[1,'abc',function(){alert(3333);}];
alert(arr[2]()) --->3333 undefined
arr[2](); ---->3333
4) var len = 4;
while(len--) //這裏len判斷以後再 --
{
setTimerout(function(){console.log(len),3000); -----> -1,-1,-1,-1
console.log(len); ----->3,2,1,0
}
5) window.name = 'Window';
var cat = {
name:'Cat'
};
var dog = {
name = 'Dog',
sound:function(word){
alert(this.name+word);
}
};
dog.sound('is pooping'); --->'Dogis pooping'
dog.sond.call(window,'is banking'); --->'windowis banking'
dog.sound.call(dog,'is banking'); ---->'Dogis banking'
dog.sound.apply(cat,['miaowing']); ---->'Catis miaowing'
4.請寫出如下正則表達式的詳細規則說明
1) /^(0[1-9]\d\d?)?[1-9]\d(6)\d?$/
這個正則表達式是 匹配
以 0 + 1-9的數字 + 一到兩個數字爲開頭 再加 1-9的數字 + 一個數字再+ 6 再加一個或者不加數字爲結尾
或者
以 1-9的數字爲開頭 + 一個數字再+ 6 再加一個或者不加數字爲結尾
2)/^1[89]|[2-9]\d|100&/i
這個正則表達式能夠匹配三種狀況 不區分大小寫
一種是 18/19
另外一種 2-9的數字 + 上任意一位數字
或者 100
3) /^\w\-/+@[a-z0-9\-]+([\[a-z]{2-6})(1,2)$/i
這個正則表達式匹配的是
不區分大小寫 以 一個或者多個 字母 或者 - 開頭 再加上 @ 再加上 一個或多個 a-z 0-9
在接上 2-6個 a-z 或 [ 一次或者兩次
5.請寫出打亂數組的方法
方法1
var arr = [1,2,3,4,5,6,7,8,9]; function arrBreak (arr) { arr.sort(()=>{ var flag = Math.ceil(Math.random() - 0.5); console.log(flag); return flag; }) } console.log(arr);
方法2
function arrBreak(arr){ [len] = [arr.length]; while(len--){ j = Math.floor(Math.random()*len); [arr[len],arr[j]] = [arr[j],arr[len]] } } arrBreak(arr)
6.寫出document.getElementsByClassName的實現方法
其實不太懂 實現方法是什麼意思 試問怎麼用???
根據dom元素的class值 獲取與 方法匹配class 的dom 生成一個dom數組,
要用的時候 用 [] 讀取數組中的dom便可
7.下列哪一個不屬於 js 保留字? ( B )
A.with
B.parent
C.class
D.void 空的 無效的
8.jquery中如何選擇一個元素的全部兄弟節點
.sublings()
9.如下那條語句會產生運行錯誤? ( A)
A.var obj = (); B.var obj = []; C.var obj = {}; D.var obj = //;
10.請選擇對javascript理解有誤的? (B)
A.Jscript是javascript的簡稱
B.javascript 是網景公司開發的一種java腳本語言,其目的是爲了簡化java開發的難度
C.FireFox和IE存在大量兼容問題是由於他們對javaScript的支持程度不一樣
D.ajax技術必定要使用javaScript技術
java 當時是sun公司的 如今是 oracle的
javaScript是網景公司,的工程師 布蘭德·奇 開發的,當時開發的要求是
開發一個與java類似但要比java簡單的語言
1.刪除全部相關瀏覽器的內容,2.對象與平臺無關,3.全面支持unicode編碼
本來開發出來叫作 liveScript 後來因爲經濟緣由 爲了宣傳 與 sun公司合做 使用 javaScript這個名字爲了宣傳
11.解釋div元素和span元素的區別
div 是塊級元素 獨佔一行 能夠設置寬高等屬性
span 是行內元素 不獨佔一行 不可設置寬高,margin-top/margin-bootom等屬性
12.alert中如何換行?
在aler中使用js特殊字符 \n 或者 \r
alert('firstLine\rsecondLine');
13.如下關於Array數組對象說法不正確的是 (C B )
A.對數組中數據排序可使用sort函數,若是排序效果非預期,能夠給sor函數加一個排序函數的參數
B.reverse用於對數組數據的倒序排列
C.想數組的最後位置加一個新元素能夠用 pop方法 //push是加 pop是刪除
D.unshift方法用於向數組刪除第一個元素 //應該是添加
14.push(),pop(),shift(),unshift()分別是什麼功能?
push() 尾部加一位 能夠傳多位 做爲多位的值 返回值是長度
pop() 尾部刪除一位 不支持傳參
shift() 頭部刪除一位 不支持傳參
unshift() 頭部添加一位 能夠傳多位 做爲多位的值 返回值是長度
15.如何阻止事件的冒泡
粗暴的方法 return false;
標準方法 event.stopPropagation();