/**
1、循环原始字符串的每一项,让每一项从当前位置向后截取 H.length 个字符,
然后和 Y 进行比较,如果不一样,继续循环;如果一样返回当前索引即可
**/
function myIndexOf(Y) {
  let lenY = Y.length,
    lenH = H.length,
    res = -1;
  if (lenY > lenH) return res;
  for (let i = 0; i <= lenH - lenY; i++) {
    if (this.substr(i, lenY) === Y) {
      res = i;
      break;
    }
  }
  return res;
}
String.prototype.myIndexOf = myIndexOf;
let H = 'fighting',
Y = 'ht';
console.log(H.myIndexOf(Y));
 
/**
2、正则处理
**/
function myIndexOf(Y) {
  // this:H
  let reg = new RegExp(Y),
    res = reg.exec(this);
  return res === null ? -1 : res.index;
}
String.prototype.myIndexOf = myIndexOf;
let H = 'fighting',
   Y = 'ht';
console.log(H.myIndexOf(Y));

最新文章

  1. 探索ASP.NET MVC5系列之~~~6.Session篇(进程外Session)
  2. 从N个元素的集合中随机取m个元素的算法实现
  3. 百度地图 获取两点坐标之间的驾车距离(非直线距离) c#
  4. [C/C++] VS 2015 C++ 插件
  5. 【转】完美解读Linux中文件系统的目录结构
  6. VS2010断点调试技巧
  7. (转)Db2 数据库常见堵塞问题分析和处理
  8. [转载]css代码优化的12个技巧
  9. 前端通信:ajax设计方案(八)--- 设计请求池,复用请求,让前端通信快、更快、再快一点
  10. iOS6新特征:UICollectionView介绍-非常棒 -转
  11. js实现双击滚屏效果
  12. Day6 ,周期末考试试题
  13. POJ 1050
  14. 检测到 Mac 文件格式: 请将源文件转换为 DOS 格式或 UNIX 格式
  15. dp之二维背包hdu3496
  16. [转]Repeat Page Header on each Page for reports SSRS
  17. Hive(五)hive的高级应用
  18. day04.3-生成器
  19. Hadoop High Availability高可用
  20. HTTP解读

热门文章

  1. spring的bean的注解配置
  2. Dynamics 9.0 安装好后 公告出现 提示:出现错误。 请稍等片刻,然后重试。 如果问题仍然存在,请与管理员联系。
  3. Spring Boot 整合Web 层技术(整合Servlet)
  4. MySQL连接不上
  5. node.js开发指南系列(1)partial is not defined
  6. android实现计时器
  7. 什么是HTTP
  8. Unity直接调用Android Toast
  9. Flutter RenderBox指南——绘制篇
  10. c3p0 连接池配置数据源