先端開発面接まとめJavaScript部分

5804 ワード

  :     、    、  、  、  、   、  、   、   、     、      、    、Nodejs 。 
js       :number,string,boolean,object,undefined js        :Date,Array,Math、Number、Boolean、String、Array、RegExp、Function... 
通常、いくつかの練習をしてTAのレベルを判断することができます.jsは柔軟ですが、具体的なコードと実現方式は個人の大域観を体現できます.(以下の例)
["1", "2", "3"].map(parseInt) [typeof null, null instanceof Object] [ [3,2,1].reduce(Math.pow), [].reduce(Math.pow)] ] var val = 'smtg'; console.log('Value is ' + (val === 'smtg') ? 'Something' : 'Nothing'); 
1.オブジェクトを作成する
 function Person(name, age) { this.name = name; this.age = age; this.sing = function() { alert(this.name) } } 
2.Thisの対象の理解について話します.
this js      ,          ,this       。         ,   this            。 this     :     Global。       ,  this        
3.イベント、IEとフォックスのイベントメカニズムにはどのような違いがありますか?どのように泡が出るのを阻止しますか?
 1.            (          )。  :                 。     JavaScript       。 2.       :IE     、        ; 3. ev.stopPropagation(); 
4.クローズドとは何ですか?なぜ使いますか?
改善を待つsay 667()を実行すると、say 667()は内部変数が存在しますが、内部関数の内部変数は存在しません.Javascriptのゴミ回収メカニズムGCはsay 667()が占有するリソースを回収しません.say 667()の内部関数の実行はsay 667()の変数に依存します.これは、クローズドの役割についての非常に率直な説明です.
 function say667() { // Local variable that ends up within closure var num = 666; var sayAlert = function() { alert(num); } num++; return sayAlert; } var sayAlert = say667(); sayAlert()//         667 
5.どのように1つのオブジェクトがあるクラスに属するかを判断しますか?
instance ofを使用します.
 if(a instanceof Person){ alert('yes'); } 
6.newオペレータは具体的に何をしましたか?
 1、       ,   this        ,            。 2、          this       。 3、        this    ,          this 。 var obj = {}; obj.__proto__ = Base.prototype; Base.call(obj); 
7.JSONの理解
JSON(JavaScript Object Notation)              。    JavaScript     。      ,     ,       {'age':'12', 'name':'back'} 
8.js遅延荷重の方法は何ですか?
deferとasync、ダイナミックにDOM方式を作成します.必要に応じて、js を非同期でロードします.
9.ajaxとは何ですかajaxのインタラクティブモデル?同期と非同期の違い?クロスドメイン問題はどう解決しますか?
完备する必要があります.
ajaxの欠点
 1.       ,        2.                ,          ,        3. Ajax      ,                 ,              。 2. Ajax         。 Ajax         (    ) readyState       5    : 0=     ,1=     2=   ,3=   ,4=   
クロスドメイン:jsop、iframe、window.name、window.postMessage、サーバー上にプロキシページを設置する.
10.モジュール化はどうしますか?
すぐに関数を実行し、プライベートメンバーを公開しません.
 1、ajax      back  。 2、     AJAX            。 3、           。 4、          。 5、     。 
11.Nodeの長所と短所について自分の意見を提出しました.
var module1 = (function(){     var _count = 0;     var m1 = function(){       //...     };     var m2 = function(){       //...     };     return {       m1 : m1,       m2 : m2     };   })(); 
12.非同期ロードの方式
 *(  )  Node            ,            ,      Node               ( Ruby)          。   , Node               javascript     ,                    ,         。 *(  )Node           ,      ,       ,               。   ,   Ruby/Rails     。 
13.答えを教えてください.
 (1) defer,   IE (2) async: (3)   script,   DOM ,     callBack documen.write  innerHTML    document.write         innerHTML           
14.JSのcall()とappy()の方法の違いは?
例ではsub,add.call(sub,3,1)=add(3,1)をaddで置換するため、実行結果は:alert(4)である.
注意:jsの関数はオブジェクトであり、関数名はFunctionオブジェクトへの参照です.
(function(x){ delete x; alert(x); })(1+5);       delete  ,delete      for in     。   ,         ,         “1”。 
15.JqueryとjQuery UIの違いは何ですか?
function add(a,b) { alert(a+b); } function sub(a,b) { alert(a-b); } add.call(sub,3,1); 
16.jqueryではどのように配列をjson文字列に変換して戻ってきますか?
jQueryにはこの機能が提供されていませんので、まずjQueryの拡張機能を二つ編纂してください.
 *jQuery   js ,           ,           。 *jQuery UI   jQuery    ,  jQuery    ,     。             ,     、    、         
17.JavaScriptにおけるスコープと変数宣言の向上?