每日思考(2020/01/14)

题目概览

  • 网页上的验证码是为了解决什么问题?
  • 对图片格式的了解及使用场景
  • 写一个方法判断字符串是否为回文字符串

题目解答

网页上的验证码是为了解决什么问题?

  • 目的

    • 防止机器行为,确定是人为操作,比如登陆、发帖等
    • 保护服务器,比如12306买票的时候,各种抢购的时候
  • 类型
    • 图形验证码
    • 字符验证码 文字+混淆 如早期的7456这种结果的验证码
    • 复杂字符验证码 复杂文字+混淆 如加入中文等本土化的增加识别难度
    • 计算验证码 数字+运算符+混淆 如1+2=? 需要识别表达式增加识别难度
    • 精确识别 文字+混淆文字 如选出 优贝在线 中的 贝字,或者选出所有的筷子,所有的红绿灯(12306)
    • 滑动拼图验证 图像+滑块+图像凹槽 如常见的滑动拼图,提供商有易盾之类的
    • 拼图验证 图像+打乱 需要用户去拼合完成。teamviewer 和 google
    • 物理验证
    • 手机短信验证码
    • 手机语音验证码

对图片格式的了解及使用场景

  • GIF

    • 优点:GIF是动态的;支持无损耗压缩和透明度
    • 缺点:详细的图片和写实摄影图像会丢失颜色信息;在大多数情况下,无损耗压缩效果不如 JPEG 格式或 PNG格式;GIF 支持有限的透明度,没有半透明效果或褪色效果
    • 适用场景:主要用于比较小的动态图标
  • PNG
    • 优点:PNG格式图片是无损压缩的图片,能在保证最不失真的情况下尽可能压缩图像文件的大小;图片质量高;色彩表现好;支持透明效果;提供锋利的线条和边缘,所以做出的logo等小图标效果会更好;更好地展示文字、颜色相近的图片。
    • 缺点:占内存大,会导致网页加载速度慢;对于需要高保真的较复杂的图像,PNG虽然能无损压缩,但图片文件较大,不适合应用在Web页面上。
    • 适用场景:主要用于小图标或颜色简单对比强烈的小的背景图。
  • JPG/JPEG
    • 优点:占用内存小,网页加载速度快。
    • 缺点:JPG格式图片是有损压缩的图片,有损压缩会使原始图片数据质量下降,即JPG会在压缩图片时降低品质。
    • 适用场景:由于这种格式图片对色彩表现比较好,所以适用于色彩丰富的图片。主要用于摄影作品或者大的背景图等。不合适文字比较多的图片。
  • SVG
    • 优点:SVG是矢量图形,不受像素影响,在不同平台上都表现良好;可以通过JS控制实现动画效果。
    • 缺点:DOM比正常的图形慢,而且如果其结点多而杂,就更慢;不能与HTML内容集成。
    • 适用场景:主要用于设计模型的展示等。
  • WebP
    • 优点:WebP格式,谷歌(google)开发的一种旨在加快图片加载速度的图片格式。图片压缩体积大约只有JPEG的2/3,并能节省大量的服务器宽带资源和数据空间。
    • 缺点:相较编码JPEG文件,编码同样质量的WebP文件需要占用更多的计算资源。
    • 适用场景:WebP既支持有损压缩也支持无损压缩。将来可能是JPEG的代替品。

写一个方法判断字符串是否为回文字符串

//回文字符串:即字符串从前往后读和从后往前读字符顺序是一致的

function isPalindrome(s) {//方法一
  if (s.length === 1) return true
  const str = s.replace(/[^a-zA-Z0-9]/g, "").toLowerCase()
  const strReverse = str.split('').reverse().join('')
  return str === strReverse
}

function palindRome(str){//方法二
    var len = str.length;
    var str1 = "";
    for(var i=len-1; i>=0;i--){
        str1+=str[i];
    }
    console.log(str1 == str)
}

原文地址:https://www.cnblogs.com/EricZLin/p/12194691.html

时间: 2024-11-02 05:02:40

每日思考(2020/01/14)的相关文章

[記事]2020/01 計畫

咕咕,產出文章真的好難 在此提醒 現在時間: 2020/01/11 12:50 2020 的第 1 個月已經過去快要一半啦 2020/01 月規劃 & 展望 邊做邊補充,希望 2 月來看可以打很多勾 3 FOCUS [ ] 最後一周的複習,堅持下去 [ ] 提高組 3 sessions [ ] 專注把其他小小.生活.細節處做好 Todo General [ ] 2019 檢討與檢視與整理 [ ] 2020 New Year resolutions Algos [ ] 線段樹入門 [ ] BIT

人工智能行业每日必读(01·16)

北京地铁正研究「刷脸」安检方案 1 月 16 日消息,北京市人大代表.北京市地铁运营有限公司党委书记.董事长谢正光透露,正在探索基于乘客信用的智慧安检模式,加强乘客信用体系建设,建立地铁『白名单』及快速安检通道制度.」据悉,目前,「刷脸」的快捷安检方案正在研究中,将在客流量较大的车站先行试点. 来源:http://www.egsea.com/news/detail?id=553902 云测数据荣登2019「ToB行业影响力·产品价值榜」 1月14日,2019 ToB行业影响力价值榜单重磅揭晓.云

2020/01/10日报

日报内容详情: 日期:2020/01/10 前言: 今天洗漱完,本来是准备走路去上课的,但是走到外面一看,天气阴霾,下起了小雨,让人感觉是很不舒适,计划也赶不上变化啊,只好做公交去上课了.好了,不多说废话,开始今天的学习记录. 学习记录 上午: 开始的时候就下载了两个漏洞扫描软件,NESSUS和Acunetix,这两个软件都是开源的,Nessus使用的是vm镜像版的,这个软件安装时真的慢,感觉电脑都有点卡了,当然这应该是我电脑太破了,已经在暗示我换一台了. 终于安装好了,要开始使用操作了,因为我

每日思考(2020/01/04)

题目概览 对<meta>标签的理解 rgba()和opacity这两个的透明效果有什么区别? 为浏览器元素添加一个随机颜色的边框 在浏览器中输入url到页面显示出来的过程发生了什么 题目解答 对<meta>标签的理解 定义:元素可提供相关页面的元信息(meta-information),比如针对搜索引擎和更新频度的描述和关键词等等.标签位于文档的头部<head></head>标签内,不包含任何内容. 标签的属性定义了与文档相关联的[名称/值对]. HTML

每日思考(2020/01/02)

题目概览 对GBK和UTF-8的理解 对z-index的理解 bind.call.apply的区别? 题目解答 对GBK和UTF-8的理解 含义 GBK编码:是指中国的中文字符,其它它包含了简体中文与繁体中文字符,另外还有一种字符"gb2312",这种字符仅能存储简体中文字符 UTF-8编码:它是一种全国家通过的一种编码,如果你的网站涉及到多个国家的语言,那么建议你选择UTF-8编码 区别 UTF8编码格式很强大,支持所有国家的语言,正是因为它的强大,才会导致它占用的空间大小要比GBK

每日思考(2020/01/03)

题目概览 对影子(Shadow)DOM的了解 怎样修改自动填充表单的黄色背景? 对arguments的理解 题目解答 对影子(Shadow)DOM的了解 概念:是浏览器的一种能力,它允许在浏览器渲染文档(document)的时候向其中的 Dom 结构中插入一棵 DOM 元素子树,但是特殊的是,这棵子树(shadow-dom)并不在主 DOM 树中.可以想象成我们在 Vue 或者 React 中使用的一个个组件,是一种将 HTML 结构.Style 封装起来的结构. <!--> 浏览器开发者设置

每日思考(2020/01/13)

题目概览 对无障碍web(WAI)的理解 请描述css的权重计算规则 写一个获取数组的最大值.最小值的方法 题目解答 对无障碍web(WAI)的理解 含义:"Accessibility",在 Web 发展的初期,习惯把它翻译成"无障碍",因为它主要考虑如何让残障人士更容易地访问 Web 内容.诸如有行动障碍的人难以完成需要用鼠标进行的精确手部动作,他们更多的需要靠键盘:有视觉障碍的人(低视力.色盲.失明)需要使用屏幕放大镜(物理放大镜.网页的缩放功能.网页设置大字体

每日思考(2020/01/15)

题目概览 DOM和BOM有什么区别? 让网页的字体变得清晰,变细用CSS怎么做? 写一个方法把0和1互转(0置1,1置0) 题目解答 DOM和BOM有什么区别? DOM 是 Document Object Model 的缩写.即文档对象模型,遵循 W3C 制定的标准.提供了独立于内容而与浏览器窗口进行交互的对象.描述了与浏览器进行交互的方法和接口,可以对浏览器窗口进行访问和操作,譬如可以弹出新的窗口,改变状态栏中的文本.其本质就是 DOM 元素.最早使用的 document.getElement

每日思考(2020/01/16)

题目概览 html和html5有什么区别? 用CSS绘制一个三角形 对this的理解 题目解答 html和html5有什么区别? 文档声明区别:HTML是超文本标记语言,一种纯文本类型的语言.HTML5文档声明(<!DOCTYPE html>)方便书写,精简,有利于程序员快速的阅读和开发. 结构语义区别:html没有体现结构语义化的标签,如:<div id="nav"></div>,html5添加了许多具有语义化的标签,如:<article&g