1.判斷一段字串是否為回文?
回文是指把相同的詞彙或句子,在下文中調換位置或顛倒過來,產生首尾回環的情趣,叫做回文,也叫回環。比如 abba,redder…
1.字串轉陣列;2.用reverse()函式顛倒;3.使用join(』』)拼接成字串
function reversefn( str )
2.陣列去重
1.直接雙重遍歷
var arr = [1,2,3,3,4,3,5,3,7,5];
function removerepetition(arr) }}
return arr;
}
2.用indexof()方法
var arr = [1,2,3,3,4,3,5,3,7,5];
var arr1 = ;
function removerepetition(arr)
} return arr1;
}
3.用fifter方法
var r = arr.filter(function(element,index,self));
console.log(r);
4.使用es6的set
const removeduplicateitems = arr => [...new set(arr)];
removeduplicateitems([42, 'foo', 42, 'foo', true, true]);
3.物件去重
var arr = [, , ,,];
var result = ;
var obj = {};
for(var i =0; i4.統計乙個字串出現最多的字母
var str = "aaabbbbccc";
function findmaxduplicatechar(str)
let charobj = {};
for(let i=0;i= maxvalue)
} return maxchar;
}findmaxduplicatechar(str)
5.排序演算法
function bubblesort(arr) }}
return arr;
}
6.判斷js中的資料型別方法
js中共有七種資料型別 es6新增symbo,其中除去 undefined; null ; 0 ; nan; 』 ';為false 其他都為 true
1)typeof 方法
var obj =
var arr = ['a','b','c']
var str = 'hello'
var bool = true
var num = 1
var n = null
var fn = function(n)
console.log(typeof obj) // object
console.log(typeof arr) // object
console.log(typeof str) // string
console.log(typeof bool) // boolean
console.log(typeof num) // number
console.log(typeof n) // object
console.log(typeof fn) // function
由上可知,typeof方法 不能區分 array 和 object
2) instanceof
var obj =
var arr = ['a','b','c']
var str = 'hello'
var bool = true
var num = 1
var n = null
var fn = function(n)
console.log(obj instanceof object) // true
console.log(arr instanceof array) // true
console.log(str instanceof string) // false
console.log(bool instanceof boolean) // false
console.log(num instanceof number) // false
console.log(n instanceof object) // false
console.log(fn instanceof function) // true
由上可知,instanceof 方法只能判斷 object 和 array 原始資料型別的值無法判斷
此方法也不能很好地區分array和object
var arr = [1,2,3,4];
arr.instanceof object
此結果也為true
3) constructor 方法
var obj =
var arr = ['a','b','c']
var str = 'hello'
var bool = true
var num = 1
var n = null
var fn = function(n)
console.log(obj.constructor == object) // true
console.log(arr.constructor == array) // true
console.log(str.constructor == string) // true
console.log(bool.constructor == boolean) // true
console.log(num.constructor == number) // true
console.log(fn.constructor == function) // true
4) tostring() 方法
var obj =
var arr = ['a','b','c']
var str = 'hello'
var bool = true
var num = 1
var n = null
var fn = function(n)
console.log(object.prototype.tostring.call(obj)) // [object object]
console.log(object.prototype.tostring.call(arr)) // [object array]
console.log(object.prototype.tostring.call(str)) // [object string]
console.log(object.prototype.tostring.call(bool)) // [object boolean]
console.log(object.prototype.tostring.call(num)) // [object number]
console.log(object.prototype.tostring.call(n)) // [object null]
console.log(object.prototype.tostring.call(fn)) // [object function]
推薦使用 tostring() 方法! 前端面試演算法
演算法一般考得不難,不過基本每一次面試都會考到,常考的演算法有 排序演算法 詳見排序演算法解析 字串中找出最長最多重複的子串 js實現 字串中最長最多重複的子串 動態規劃,參見揹包問題 js實現動態規劃例項 層次遍歷二叉樹 遍歷二叉樹方法 加油站問題 貪心演算法 js實現加油貪心演算法 二分法 js...
頭條前端面試題彙總,會持續更新
頭條前端面試題彙總,會持續更新 今日頭條的面試業界最難,為準備去頭條面試的小夥伴收集了最近一段時間今日頭條的面試題,祝大家面試成功,新題目及答案會持續更新 下面是為各位相入職今日頭條的小夥伴收錄的頭條前端面試題,拿走。頭條前端面試題 一 頭條前端面試題 二 今日頭條前端面試以及題解 今日頭條一面筆試...
前端面試題總結 持續更新
共同點 都是儲存在瀏覽器端,且同源的。區別 function fn fn.prototype c function var myfn new fn 例項物件 myfn.b myfn.c 依次列印的就是 0 30這裡運用的知識點就是new的作用 建立乙個新物件 將建構函式的作用域賦給新物件 因此 th...