[午间休息] - 午间codewars活跃脑袋
https://www.codewars.com/kata/51f2b4448cadf20ed0000386/javascript
中午是一个易困的时间段.如果其它人不睡觉还好.
这个js题目就是说如果你的函数传入一个url路径,但是你要把含有#的给去掉
Complete the function/method so that it returns the url with anything after the anchor (#) removed.
// returns 'www.codewars.com'
removeUrlAnchor('www.codewars.com#about') // returns 'www.codewars.com?page=1'
removeUrlAnchor('www.codewars.com?page=1')
//my solution
function removeUrlAnchor(url){
// TODO: complete if(url.indexOf("#") != -1){
return url.substring(0,url.indexOf("#"));
}else{
return url;
}
}
这个显然通过了,使用了substring,如果含有#,则通过#进行剪切,否则那就是没有#,直接返回原链接.
但是太过于逻辑化,CW大神的解:
function removeUrlAnchor(url){
return url.split('#')[0];
}
这表示通过#符号将链接分为数组,并返回获取数组下标0的元素.
是的,连判定url是否含有#都省去了.
之后还有这个:
function removeUrlAnchor(url){
// TODO: complete
return url.replace(/#.*/gi,"");
}
使用了正则表达式./#.*/gi (g: 全局匹配 i: 忽略大小写 gi: 全局匹配 + 忽略大小写) #.*表示贪婪匹配匹配#后的所有东西
之后还有match:
function removeUrlAnchor(url)
{
return url.match(/([^#]*)/)[1];
}
只要是”^”这个字符是在中括号”[]”中被使用的话就是表示字符类的否定,如果不是的话就是表示限定开头。
这里的[1]我很有疑问,我把这个答案跑了一遍,之后将1改为[0]后依然全票通过.
match返回的是数组,这个就是说除了#和后面的可以获取到的元素数组的[0]下标0,但下标[1]竟然也是通过了.(这个疑问之后再详解)
[午间休息] - 午间codewars活跃脑袋的更多相关文章
- Goals100
Start:2016.4.10 100天目标:jy_ai学习.swift.设计模式 以10天为周期,开始周会,执行内容:自我检讨本周期,并展望下一个周期:目标一:寻找高效方法.1.思考, ...
- 前端学习:学习笔记(HTML部分)
前端学习:学习笔记(HTML部分) HTML学习总结(图解) HTML简介 1.HTML是什么? 超文本标记语言 超文本:文字/图片/音频/视频.... 标记/标签 2.HTML的用途? 是用来编写静 ...
- [逻辑学]意外绞刑悖论(Hangman paradox)(又称意外考试悖论)
绞刑 在审讯中一位囚徒被法官判处死刑.判决如下:“你下周将会被处决,但哪天处决对你来说是一个惊喜.”囚徒因此作出如下推理:“假如处决日是周日,那么在周六夜晚降临后,我将提前知道我周日会被处决,那样的话 ...
- 调bug的一点感悟
出错时一定要先看错误日志,要知道出什么错了,所以平常在可能出错的地方都要输出错误日志. 不要根据脑中的设想去调bug,时间久了就没有耐心,一烦躁起来,思维定势了,就越调不出来了. 所以一般半小时还找不 ...
- 午间邂逅 | post 和 get 的兄弟情深
前言 本文已经收录到我的 Github 个人博客,欢迎大佬们光临寒舍: 我的 Github 博客 学习导图: image-20200710142453734 image-202007101431049 ...
- 《高效休息法》IT从业者如何高效休息
这本书主要讲什么? 大脑疲劳和身体疲劳不同,身体再怎么休息,大脑疲劳还是会在不知不觉中积累 大脑是一个重量仅仅占体重2%,却消耗着20%能量的大胃王,这些能量大部分都用在了预设模式网络(Default ...
- 【Java并发基础】安全性、活跃性与性能问题
前言 Java的多线程是一把双刃剑,使用好它可以使我们的程序更高效,但是出现并发问题时,我们的程序将会变得非常糟糕.并发编程中需要注意三方面的问题,分别是安全性.活跃性和性能问题. 安全性问题 我们经 ...
- 五二不休息,今天也学习,从JS执行栈角度图解递归以及二叉树的前、中、后遍历的底层差异
壹 ❀ 引 想必凡是接触过二叉树算法的同学,在刚上手那会,一定都经历过题目无从下手,甚至连题解都看不懂的痛苦.由于leetcode不方便调试,题目做错了也不知道错在哪里,最后无奈的cv答案后心里还不断 ...
- 算是休息了这么长时间吧!准备学习下python文本处理了,哪位大大有好书推荐的说下!
算是休息了这么长时间吧!准备学习下python文本处理了,哪位大大有好书推荐的说下!
随机推荐
- flask 数据库操作(增删改查)
数据库操作 现在我们创建了模型,生成了数据库和表,下面来学习常用的数据库操作,数据库操作主要是CRUD,即Create(创建).Read(读取/查询).Update(更新)和Delete(删除). S ...
- Class__Two
今天老师要求做查找英文文章中最高频的词 文章用文本储存 import java.io.BufferedReader;import java.io.File;import java.io.FileIn ...
- c# 图像呈现控件PictureBox
在c#中可以使用PictureBox控件来呈现图像,图像资源可以来自文件,也可以是存在内存中的位图对象.可以显示本地图像文件或来自网络的图片,也可以来自项目文件中的图像. 从URI加载图像文件. 调用 ...
- svnrdump:E175000:SSL is not supported错误的解决
参考博客:https://www.cnblogs.com/jkko123/p/6358461.html 参考博客:https://blog.csdn.net/w171066/article/detai ...
- 转:C# 小数位数保留的方法集锦
转载自:http://www.jb51.net/article/17010.htm 1. System.Globalization.NumberFormatInfo provider = new Sy ...
- python GIL 全局锁,多核cpu下的多线程性能究竟如何?
python GIL 全局锁,多核cpu下的多线程性能究竟如何?GIL全称Global Interpreter Lock GIL是什么? 首先需要明确的一点是GIL并不是Python的特性,它是在实现 ...
- Action的编写方式
四.Action 的编写方式 : 三种 第一种 创建普通类 不继承任何类,不实现任何接口 Public class HelloAction{ } 第二种 创建类,实现接口action Public ...
- 数据分析之pandas01
Series 一.Series Series是一种类似于一维数组的对象,有两部分组成: .values:一组数据(ndarray类型) .index: 相关的数据索引标签 二.seri ...
- Kattis之旅——Divisible Subsequences
Given a sequence of positive integers, count all contiguous subsequences (sometimes called substring ...
- Spring基于的注解自动装配和依赖注入(***)
#自动装配的小Demo: package com.gyf.annotation; //DAO层 public interface UserDao { public void save(); } pac ...