热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

前端提高篇(二十九)JS进阶21常见字符串处理需求及URL编码

定义方式1.字符串直接量:单引号,双引号,注意转义字符2.字符串对象:String()字符串的相关方法:官网链

在这里插入图片描述
定义方式
1.字符串直接量:单引号,双引号,注意转义字符
2.字符串对象:String()
在这里插入图片描述
字符串的相关方法:官网链接
在这里插入图片描述
charCodeAt(i):将字符串中第i个字符转成编码
在这里插入图片描述
String.fromCharCode(num):将数字num转成字符
在这里插入图片描述
字符之间可以比较大小,因为字符会转成数字
在这里插入图片描述
字符串长度与字节长度(图中写错了)
单字节与双字节:为了节省内存,能用单字节存储的就用单字节,不能时再存在双字节中,比如能用ASCII单字节编码的就用ascii,不能时就用Unicode双字节

var s = 'ccy与anzhi'
var len = s.length;//字符串长度
var lenB = 0;//存储字节长度
for (var i &#61; 0; i < len; i&#43;&#43;){if (s.charCodeAt(i) > 255){lenB &#43;&#61; 2;//ASCII码值最大是255}else lenB &#43;&#43;;
}

在这里插入图片描述
字符串拼接&#xff1a;s1&#43;s2&#43;s3与s1.concat(s2,s3)
建议使用加号&#xff0c;简单&#xff0c;但注意数字与字符相加的隐式类型转换
在这里插入图片描述

字符串查找&#xff1a;charAt,indexOf&#xff0c;lastIndexOf&#xff0c;match&#xff0c;search
s.charAt(i)&#xff1a;查找s中对应下标i位置的字符
s.indexOf(‘aa’,9)&#xff1a;查找s中从下标9开始第一个’aa’的位置&#xff0c;没有找到就返回-1
s.lastIndexOf(‘aa’,15)&#xff1a;查找s中从下标15处往前找&#xff0c;最后一个’aa’的位置&#xff0c;没有找到就返回-1
match&#xff0c;search与正则匹配使用&#xff0c;可以查找非固定的字符串&#xff0c;之后再更新
在这里插入图片描述
在这里插入图片描述
indexOf和lastIndexOf的第二个参数的范围都是0-s.length&#xff0c;左闭右开&#xff0c;如果传入的是负数&#xff0c;就会被当作0&#xff0c;对indexOf相当于没有传第二个参数&#xff0c;lastIndexOf会返回-1
在这里插入图片描述

字符串截取&#xff1a;slice(start,end)和substring(start,end)
截取区间是左闭右开的&#xff0c;不包含下标为第二个参数的字符
当开始start和结束end数字写错了&#xff0c;start>end时&#xff0c;slice返回空字符串&#xff0c;substring会自行比较start和end的大小&#xff0c;调整位置
在这里插入图片描述
slice可以支持参数为负数&#xff0c;substring会将负数转成0&#xff0c;再截取&#xff0c;因此s.substring(3,-1)相当于s.substring(0,3)
在这里插入图片描述
字符串替换replace&#xff0c;会涉及到正则表达式&#xff0c;也放到后面再一起更新
字符串和数组的转换&#xff1a;join和split
数组转字符串&#xff1a;join&#xff0c;高效方式&#xff0c;性能也很赞
在这里插入图片描述
字符串转数组&#xff1a;split
在这里插入图片描述
根据空格拆解&#xff1a;
在这里插入图片描述
根据正则表达式拆解:
在这里插入图片描述
URL编码&#xff1a;
encodeURI&#xff1a;当我们要写a标签里的链接时&#xff0c;需要将关键词拼接成网址&#xff0c;将其中的汉字或特殊字符转成Unicode编码
URI解码&#xff1a;decodeURI
在这里插入图片描述

encodeURIComponent可以将网址中的特殊符号&#xff0c;如冒号&#xff0c;斜杠&#xff0c;问号也由Unicode编码&#xff0c;可用于&#xff0c;拼接的关键词也是一个网址&#xff0c;如&#xff1a;
‘https://www.baidu.com/s?wd&#61;https://www.baidu.com/s?wd&#61;王一博’

var u &#61; &#39;https://www.baidu.com/s?wd&#61;王一博&#39;;
var u1 &#61; encodeURIComponent(u);
var u2 &#61; &#39;https://www.baidu.com/s?wd&#61;&#39; &#43; u1;

在这里插入图片描述


推荐阅读
  • 2022416 Leetcode 633.平方数之和
    第一版,使用双指针,但是造成了溢出。classSolution{public:booljudgeSquareSum(intc){vector ... [详细]
  • JS加密解密
    leta=汪政..222RRRp767868^*%^*%344h哈哈;letb=udp.d(ud(a));//需要加密的内容letc=udp. ... [详细]
  • 记录工作和学习中遇到和使用过的Python库。Target四个Level整理Collect学习Learn练习Practice掌握Master1.Python原生和功能增强1.1py ... [详细]
  • MySQL的SQL语句写法,除了那些基本的之外,还有一些也算比较常用的,这里记录下来,以便以后查找。好记性不如烂笔头& ... [详细]
  • python-去除字符串中特定字符一、去掉字符串两端字符:strip(,rstrip(,lstrip(s.strip(#删除两边(头尾空字符,默认是空字符s. ... [详细]
  • Java String与StringBuffer的区别及其应用场景
    本文主要介绍了Java中String和StringBuffer的区别,String是不可变的,而StringBuffer是可变的。StringBuffer在进行字符串处理时不生成新的对象,内存使用上要优于String类。因此,在需要频繁对字符串进行修改的情况下,使用StringBuffer更加适合。同时,文章还介绍了String和StringBuffer的应用场景。 ... [详细]
  • 最近想用js做一个简单的计算器,不过网上的例子好像大部分都是直接从左到右挨个计算,就好像1+2*5,就会先计算1+2,再计算3*5,并没有实现运算符的优先级,这里找到了一种方法实现,来总结一下。不过这 ... [详细]
  • 1、创建高级对象使用构造函数来创建对象构造函数是一个函数,调用它来例示并初始化特殊类型的对象。可以使用new关键字来调用一个构造函数。下面给出了使用构造函数的新示例。 ... [详细]
  • 如何实现Percona Mysql Galera多读写集群的部署
    本篇文章给大家主要讲的是关于如何实现PerconaMysqlGalera多读写集群的部署的内容,感兴趣的话就一起来看看这篇文章吧,相信看完如何实现PerconaMysq ... [详细]
  • 开发笔记:js正则表达式属性及方法的使用
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了js正则表达式属性及方法的使用相关的知识,希望对你有一定的参考价值。正则表达式直接量 ... [详细]
  • Numpy中np.random.rand()和np.random.randn() 用法和区别详解
    这篇文章主要介绍了Numpy中np.random.rand()和np.random.randn()用法和区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考 ... [详细]
  • Whatisthefastest(parallel?)waytofindasubstringinaverylongstringusingbitwiseoperator ... [详细]
  • python 鸭子类型_Python中的鸭子输入是什么?
    python鸭子类型Python遵循EAFP(比许可更容易请求宽恕)而不是LBYL(跨越式)。EAFP的Python哲学在某 ... [详细]
  • php 字符串分割和比较介绍
    后端开发|php教程字符串,php,介绍后端开发-php教程比较两个字符串是否相等,最常见的方法就是使用“”来判断,至于它和“”的区别,简单来说就是前者强调“Identical”类 ... [详细]
  • 纠正网上的错误:自定义一个类叫java.lang.System/String的方法
    本文纠正了网上关于自定义一个类叫java.lang.System/String的错误答案,并详细解释了为什么这种方法是错误的。作者指出,虽然双亲委托机制确实可以阻止自定义的System类被加载,但通过自定义一个特殊的类加载器,可以绕过双亲委托机制,达到自定义System类的目的。作者呼吁读者对网上的内容持怀疑态度,并带着问题来阅读文章。 ... [详细]
author-avatar
兔牙的猪蹄
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有