1. 程式人生 > >騰訊2015前端筆試題

騰訊2015前端筆試題

程式設計題:

  • 請給Array本地物件增加一個原型方法,用於刪除陣列條目中的重複條目(可能有多個),返回一個包含被刪除的重複條目的新陣列
<!DOCTYPE html>
<html>
<head>
	<title></title>
</head>
<body>
<p>題目:請給Array本地物件增加一個原型方法,用於刪除陣列條目中重複的條目(可能有多個),返回值是一個包含被刪除的重複條目的新陣列。</p>
<p>思路:通過for迴圈遍歷,將重複的值用splice取出然後入棧</p>
<script>
	Array.prototype.distinct=function(){
		var ret=[];
		for(var i=0;i<this.length;i++){
			for(var j=i+1;j<this.length;j++){
				if(this[i]===this[j]){
					//將重複的值取出
					ret.push(this.splice(j,1)[0]);
				}
			}
		}
		return ret;
	}
	//測試
	console.log([1,2,3,4,3,5,6,3,1].distinct());
</script>
</body>
</html>
  • 補充程式碼,使mySort()能傳入的引數按照從小到大排序顯示出來。
<!DOCTYPE html>
<html>
<head>
	<title></title>
</head>
<body>
<p>題目:補充程式碼,使mySort()能傳入的引數按照從小到大排序顯示出來。</p>
<p>實現思路:先將函式的引數用陣列儲存起來,然後通過定義一個排序函式來排序</p>
<script>
	function mySort(){
		var tags=new Array();//使用陣列作為引數儲存容器
		for(var i=0;i<arguments.length;i++){
			tags.push(arguments[i]);
		}
		tags.sort(function(compare1,compare2){
			return compare1-compare2;
		})
		return tags;//返回已排序的陣列
	}
	var result=mySort(50,11,16,32,99,87);
	console.log(result);
</script>
</body>
</html>

【薄弱環節】對陣列、字串中的操作方法還不能記得牢