【JS】实现strStr() 、实现indexOf()

给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回  -1。

示例 1:
输入: haystack = "hello", needle = "ll"
输出: 2

示例 2:
输入: haystack = "aaaaa", needle = "bba"
输出: -1

示例 3:
输入: haystack = "abc", needle = ""
输出: 0

 

解法一:这个函数在JS中对应的是indexOf(),实现的方式比容易,遍历一次就可以了。先找到第一个相等的字符,字符串haystack 向后截取needle长度,相等就返回此字符出现的位置

/**
 * @param date 2018/11/11 下午
 */
var strStr = function(haystack, needle) {
    if(haystack==needle || needle==""){
        return 0;
    }
var arrn = needle.split("")
var len = needle.length;
var newstr = "",ii;
for(var i in haystack){
    if(haystack[i]==arrn[0]){
        ii=parseInt(i)
        newstr = haystack.substr(ii,len)
        if(newstr==needle){
            return ii;
        }
    }
}
return -1;
};

 

你可能感兴趣的:(javascript)