文章 评论 浏览 29
abc
cccabcaaa
ccc
cca
cab
function findIndex(key, obj) { console.log(`查找的对象${obj}`, `----查找的键值${key}`) let arr = [] let index = -1 //最后返回查找到的索引 /**********************如果是数组***********************/ if (obj instanceof Array) { arr = obj arr.some((i, indexA) => { if (i == key) { index = indexA return true } }) } /**********************如果是字符串***********************/ else if (typeof (obj) === 'string') { arr = obj.split('') let keyLen = key.length for(let i=0;i<=arr.length-keyLen;i++){ if(key === obj.substring(i, i+keyLen)){ index = i } } } else { return '不符合数据格式' } return index } console.log(31, findIndex('g', 'abcdefg')) console.log(32, findIndex(22, [22,33,444]))
文章 0 评论 0
接受
先说下思路吧,比较笨,哈哈
abc
与cccabcaaa
这种比较,就是从第一个开始,每三个长度为一段进行比较abc
比较ccc
,abc
比较cca
,abc
比较cab
... 比较笨吧, 可能性能比较差,但是好理解。。第 151 题:用最简洁代码实现 indexOf 方法?