先の面接問題のまとめ(一)
10585 ワード
まとめてみます.おかみさんの面接問題に感謝します.まとめてみます.先の面接問題は、私のような軽いもので、復習する機会にもなるでしょう.最近はモバイル端末で開発されたものをたくさん見ました.時間が経ったら整理します.やはりコードをたくさんノックしますね.
1.JavaScriptはどのような言語ですか?どのような特徴がありますか?
w 3 cの答えは悪くないです.
JavaScriptはネットワークに属するスクリプト言語です.
JavaScriptは数百万のウェブページによって設計、検証フォーム、検査ブラウザ、cookiesを作成し、さらに多くのアプリケーションを改善するために使用されます.
JavaScriptはインターネットで一番流行しているスクリプト言語です.
JavaScriptは使いやすいです.きっと好きになりますよ.
2.JavaScriptのデータの種類は何がありますか?
それは基礎です.js六大データタイプ:number、string、object、Boolean、null、undefined
3.JavaScriptデータの種類はどう判断しますか?
typeofを使用すると
js判定配列タイプの方法
一、instance of
instanceは、したがって、名前の意味は、インスタンス、例ですので、instance ofは、変数があるオブジェクトの例かどうかを判断するために使用されます.
a instance of b?alert(「true」):alert(「false」) //注意b値はあなたが判断したいデータの種類で、Arayなどの文字列ではありません.
constructorコンストラクタ属性は、このオブジェクトを作成する配列関数に対する参照を返します.
オブジェクトに対応する構造関数を返します.
Dcument.getElemenntById('id').value()
5.ページの中の全てのcheckboxを取得したいですが、どうすればいいですか?(サードフレームは使用しない)
•直接DOMでイベントを結びつける:
8.Javascriptのイベントフローモデルは何がありますか?
•「事件の泡が立つ」:イベントは最も具体的な要素によって受け入れられ始め、そして段階を追って上に伝播・「事件の捕捉」:イベントは最も具体的でないノードによって先に受信され、そして段階を追って下に下がり、最も具体的な•「DOMイベントの流れ」に至る.三つの段階:イベントの捕捉、標的段階、イベントの泡が発生する.
9.何かのトラブルは、どうやって阻止すればいいですか?
このイベントの処理手順を定義すれば、このイベントはこの処理プログラムを呼び出します.このイベントの処理手順やイベントがtrueに戻ると定義されていない場合、このイベントはこのオブジェクトの親レベルのオブジェクトに伝播され、中から外へと処理されるまでは、trueに戻るイベントです.(親レベルのオブジェクトはすべて同じイベントがアクティブになります)またはオブジェクトレベルの最上階にあるdocumentオブジェクト(一部のブラウザはwindowです)に到達しました.
•W 3 cではstopPropagation()を使用して、IEでcancel Bubble=trueを設定します.捕獲中にstopPropagation()を設定します.その後、後の発泡プロセスも発生しません.3.イベントのデフォルト動作を阻止します.例えば、click<a>後のジャンプです.•W 3 cでは、preventDefaultを使用して、メソッド設定します.
8.何がAjaxとJSONで、それらの長所と短所ですか?Ajaxのjsは原理を実現します.
実現原理:
Ajaxは、非同期JavaScriptとXMLであり、Webページで非同期データのインタラクションを実現するために使用される.
利点:•すべてのコンテンツをページに載せないように、部分的なコンテンツをロードし、データ転送量を低減することができます.•ユーザーが絶えずページを更新したり、ジャンプしたりすることを避け、ユーザー体験の欠点を高めることができます.•検索エンジンに友好的ではありません.(•ajax下の前後の退却機能を実現するためにはコストが大きい•要求数の増加を引き起こす可能性がある•ドメインをまたぐ問題の制限JSONは、軽量級のデータ交換フォーマットであり、ECMAのサブセットの利点:軽量級、人が読みやすく、編纂が容易で、マシン(JavaScript)の解析が容易で、複合データタイプ(配列、対象、文字列、数字)をサポートする.
9.下記のコードの出力を見てなぜですか?原因を説明します.
10.下記のコードを見て、何を出力しますか?原因を説明します.
nullは値が一つしかないデータタイプで、この値がnullです.ポインターオブジェクトを表すので、typeof検出で「object」に戻ります.
11.下のコードを見て、何を出力しますか?fooのタイプはなぜですか?
1.JavaScriptはどのような言語ですか?どのような特徴がありますか?
w 3 cの答えは悪くないです.
JavaScriptはネットワークに属するスクリプト言語です.
JavaScriptは数百万のウェブページによって設計、検証フォーム、検査ブラウザ、cookiesを作成し、さらに多くのアプリケーションを改善するために使用されます.
JavaScriptはインターネットで一番流行しているスクリプト言語です.
JavaScriptは使いやすいです.きっと好きになりますよ.
2.JavaScriptのデータの種類は何がありますか?
それは基礎です.js六大データタイプ:number、string、object、Boolean、null、undefined
3.JavaScriptデータの種類はどう判断しますか?
typeofを使用すると
var a="string"; //string
var a=1; //number
var a=false; //boolean
var a; console.log(typeof a); //undfined
var a = null; console.log(typeof a); //object
var a = document; console.log(typeof a); //object
var a = []; console.log(a); //object
var a = function(){}; console.log(typeof a) //function function
null、対象、配列が戻ってくるのは全部objectタイプです.次はどうやってobjectタイプを判断するかを見ます.js判定配列タイプの方法
一、instance of
instanceは、したがって、名前の意味は、インスタンス、例ですので、instance ofは、変数があるオブジェクトの例かどうかを判断するために使用されます.
a instance of b?alert(「true」):alert(「false」) //注意b値はあなたが判断したいデータの種類で、Arayなどの文字列ではありません.
var a=[];
console.log(a instanceof Array) // true
二、constructorconstructorコンストラクタ属性は、このオブジェクトを作成する配列関数に対する参照を返します.
オブジェクトに対応する構造関数を返します.
function employee(name,job,born){
this.name=name;
this.job=job;
this.born=born;
}
var bill=new employee("Bill Gates","Engineer",1985);
console.log(bill.constructor); // function employee(name, jobtitle, born){this.name = name; this.jobtitle = job; this.born = born;}
判断のタイプの方法は、引き返すのがすべてtrueです. console.log([].constructor == Array);
console.log({}.constructor == Object);
console.log("string".constructor == String);
console.log((123).constructor == Number);
console.log(true.constructor == Boolean);
いい書き方は:function isArray(object){
return object && typeof object==='object' &&
Array == object.constructor;
}
4、既知IDのInput入力ボックスは、この入力ボックスの入力値を取得したいですが、どうすればいいですか?(サードフレームは使用しない)Dcument.getElemenntById('id').value()
5.ページの中の全てのcheckboxを取得したいですが、どうすればいいですか?(サードフレームは使用しない)
var list = document.getElementByTagName('input');
var checkBoxList = [];
var len = domList.length;
while (len--)
{ // while for
if (domList[len].type == ‘checkbox') {
checkBoxList.push(list[len]);
}
6.既知のIDのDIVを設定するhtml内容はxxxxで、フォント色は黒に設定されています(サードフレームは使用しません).var dom = document.getElementById("ID”);
dom.innerHTML = "xxxx”
dom.style.color = "#000”
7.DOMノードをクリックした時、私たちは関数を実行したいですが、どうすればいいですか?•直接DOMでイベントを結びつける:
test()
•JSでオンclickで結びつける:xxx.onclick=test•イベント追加でバインディングする:addEventListener(xxx,‘click’,test)8.Javascriptのイベントフローモデルは何がありますか?
•「事件の泡が立つ」:イベントは最も具体的な要素によって受け入れられ始め、そして段階を追って上に伝播・「事件の捕捉」:イベントは最も具体的でないノードによって先に受信され、そして段階を追って下に下がり、最も具体的な•「DOMイベントの流れ」に至る.三つの段階:イベントの捕捉、標的段階、イベントの泡が発生する.
9.何かのトラブルは、どうやって阻止すればいいですか?
このイベントの処理手順を定義すれば、このイベントはこの処理プログラムを呼び出します.このイベントの処理手順やイベントがtrueに戻ると定義されていない場合、このイベントはこのオブジェクトの親レベルのオブジェクトに伝播され、中から外へと処理されるまでは、trueに戻るイベントです.(親レベルのオブジェクトはすべて同じイベントがアクティブになります)またはオブジェクトレベルの最上階にあるdocumentオブジェクト(一部のブラウザはwindowです)に到達しました.
•W 3 cではstopPropagation()を使用して、IEでcancel Bubble=trueを設定します.捕獲中にstopPropagation()を設定します.その後、後の発泡プロセスも発生しません.3.イベントのデフォルト動作を阻止します.例えば、click<a>後のジャンプです.•W 3 cでは、preventDefaultを使用して、メソッド設定します.
8.何がAjaxとJSONで、それらの長所と短所ですか?Ajaxのjsは原理を実現します.
実現原理:
Ajaxは、非同期JavaScriptとXMLであり、Webページで非同期データのインタラクションを実現するために使用される.
利点:•すべてのコンテンツをページに載せないように、部分的なコンテンツをロードし、データ転送量を低減することができます.•ユーザーが絶えずページを更新したり、ジャンプしたりすることを避け、ユーザー体験の欠点を高めることができます.•検索エンジンに友好的ではありません.(•ajax下の前後の退却機能を実現するためにはコストが大きい•要求数の増加を引き起こす可能性がある•ドメインをまたぐ問題の制限JSONは、軽量級のデータ交換フォーマットであり、ECMAのサブセットの利点:軽量級、人が読みやすく、編纂が容易で、マシン(JavaScript)の解析が容易で、複合データタイプ(配列、対象、文字列、数字)をサポートする.
9.下記のコードの出力を見てなぜですか?原因を説明します.
var a;
alert(typeof a); // undefined
alert(b); //
js解析過程の随筆を参照してください.js前処理時に、一つの語法の作用域を作ります.aはvar宣言変数です.すべてはundefinedを与えました.10.下記のコードを見て、何を出力しますか?原因を説明します.
var a = null;
alert(typeof a); //object
nullは値が一つしかないデータタイプで、この値がnullです.ポインターオブジェクトを表すので、typeof検出で「object」に戻ります.
11.下のコードを見て、何を出力しますか?fooのタイプはなぜですか?
var foo = "11"+2-"1";
console.log(foo);
console.log(typeof foo);
foo 111,foo Number。
var foo = "11"+2+"1"; // '1' '1'
console.log(foo);
console.log(typeof foo); foo 1121( ),foo String。
12.コードを見て答えをあげる.var a = new Object();
a.value = 1;
b = a;
b.value = 2;
alert(a.value);
:2( )