クローズドパッケージとタイマー
3138 ワード
テーマ1:次のコード出力はいくらですか?コードを修正してfnArriにiを出力させます.2つ以上の方法を使う
1つ目:
2つ目:
タイトル2:自動車の対象物をパッケージ化し、以下の方法で自動車の状態を取得することができる
テーマ3:次のコード出力結果は?どうして?
题目4:次のコード出力结果は?どうして?
テーマ5:次のコードは出力しますか?
*タイトル6:要素の真のアスペクトを取得する方法
回答:
タイトル7:URLはどのようにコードして復号しますか?どうしてコードするの?
理由:URLの一部の文字がサーバによってパラメータ解析やURLに不正な文字として誤って扱われないようにするため
タイトル8:*以下の関数を補完し、ユーザーのブラウザタイプを判断する
var fnArr = [];
for (var i = 0; i < 10; i ++) {
fnArr[i] = function(){
return i;
};
}
console.log( fnArr[3]() ); //
1つ目:
var fnArr = [];
for (var i = 0; i < 10; i ++) {
(function(i){
fnArr[i]=function(){
return i;
}
})(i);
}
console.log( fnArr[5]()); // 5
2つ目:
var fnArr = [];
for (var i = 0; i < 10; i ++) {
fnArr[i] = (function(){
var b=i;
return function(){
return b;
}
})(i);
}
console.log( fnArr[1]() ); // 1
タイトル2:自動車の対象物をパッケージ化し、以下の方法で自動車の状態を取得することができる
var Car = (function(){
var speed = 0;
function setSpeed(s){
speed = s;
}
function getSpeed(){
console.log(speed);
}
function accelerate(){
return speed+=10;
}
function decelerate(){
return speed-=10;
}
function getStatus(){
if(speed>0){
console.log('running');
}else{
return console.log('stop');
}
}
return {
setSpeed: setSpeed,
getSpeed:getSpeed,
accelerate:accelerate,
decelerate:decelerate,
getStatus:getStatus,
};
})();
Car.setSpeed(30);
Car.getSpeed(); //30
Car.accelerate();
Car.getSpeed(); //40;
Car.decelerate();
Car.decelerate();
Car.getSpeed(); //20
Car.getStatus(); // 'running';
Car.decelerate();
Car.decelerate();
Car.getStatus(); //'stop';
//Car.speed; //error
Car.setSpeed(60);
Car.getSpeed();
テーマ3:次のコード出力結果は?どうして?
var a = 1;
setTimeout(function(){
a = 2;
console.log(a);//2
}, 0); //setTimeout , 0, 1000, 。
var a ;
console.log(a); //1
a = 3;
console.log(a); //3
题目4:次のコード出力结果は?どうして?
var flag = true;
setTimeout(function(){
flag = false;
},0)
while(flag){} // , , setTimeout , flag true, 。
console.log(flag);
テーマ5:次のコードは出力しますか?
delayer: 0, delayer:1...
の出力方法(閉パッケージを使用して実現)for(var i=0;i<5;i++){
setTimeout((function(){
var n=i+1;
return function(){
console.log('delayer:' + n );
};
})(), 0);
console.log(i);
}
*タイトル6:要素の真のアスペクトを取得する方法
回答:
var node = document.querySelector('#id');
window.getComputedStyle(node).height/width
タイトル7:URLはどのようにコードして復号しますか?どうしてコードするの?
:
decodeURI()
decodeURIComponent()
:
encodeURI()
encodeURIComponent()
理由:URLの一部の文字がサーバによってパラメータ解析やURLに不正な文字として誤って扱われないようにするため
タイトル8:*以下の関数を補完し、ユーザーのブラウザタイプを判断する
function isAndroid(){
return /Android/.test(navigator.userAgent);
}
funcnction isIphone(){
return /iPhone/.test(navigator.userAgent);
}
function isIpad(){
return /iPad/.test(navigator.userAgent);
}
function isIOS(){
return /(iPad)|(iPhone)/i.test(navigator.userAgent);
}