js入门之字符串常用的方法
一、 概念理解基本包装类型
1. 基本包装类型
三种基本包装类型
String
var s = new String('123dddd');
Number
Boolean 简单类型没有方法和属性 之所有可以调用方法和属性是因为会在堆上创建一个临时的基本包装类型,当使用完成之后通过null来清除, 一般不适用boolean和number基本包装类型
2. 字符串的特点
字符串的特点1 不可变
当对一个字符串重新赋值的时候是重新开辟一个新的内存区
问题: 当拼接大量字符串的时候,会有性能问题
3. 常用字符串方法
常用的字符串方法
1. 字符串方法
charAt() 获取指定位置处字符
charCodeAt() 获取指定出字符的ASCII码
str[0] HTML5支持 和charAt() 等效
console.log(s[2]); 2. 字符串操作方法
concat() 拼接字符串等效于+ +更常用
var a = 'abc';
var b = '123';
console.log(a.concat(b));
slice() 从start开始截取到end位置 end娶不到
substring()
substr()
var s = '我爱中华人民共和国';
var new_s = s.substr(2,2);
console.log(new_s); 3.位置方法
indexOf
lastIndexOf()
查找所有o出现的位置
var s = 'abcodefoxyozzopp';
var index = -1
console.log(s.indexOf('o'));
do {
index = s.indexOf('o',index + 1);
if (index !== -1) {
console.log(index);
}
} while (index !== -1); 4. 去除空白
trim() 只能去除字符串前后的空白 5. 大小写转换方法
to(Locale)UpperCase()
to(Locale)LowerCase()
var str = 'abcDeFG';
console.log(str.toLowerCase())
console.log(str.toUpperCase()) 6. 其它
search()
replace() 只会替换第一个找到的字符串
替换字符串中所有的o为!
var s = 'abcodefoxyozzopp';
var new_s;
var index = -1;
do {
index = s.indexOf('o', index + 1);
if (index !== -1) {
s = s.replace('o', '!'); }
} while (index !== -1); console.log(s); split()
var s = ' abc xyz a 123 ';
s = s.split(' ');
console.log(s.join('')); 查找次数最多的字符串
var s = 'abcodefoxyozzopp';
var ch;
var num;
var o = {}
for (var i = 0; i < s.length; i++) {
var item = s.charAt(i);
if (o[item]) {
o[item]++;
} else {
o[item] = 1;
}
}
num = 1;
for (var key in o) {
if (num < o[key]) {
num = o[key];
ch = key; //次数最多的字符
}
}
console.log(num, ch); 案例
获取url的请求参数 把字符串转成对象
var url = 'https://cn.bing.com/search?q=%e7%99%be%e5%ba%a6%e4%b8%80%e4%b8%8b&qs=HS&pq=%e7%99%be%e5%ba%a6&sc=9-2&cvid=1F2309EACC5B4134A2B6C187EF4955B7&FORM=QBLH&sp=2';
function getParams(url) {
var index = url.indexOf('?') + 1;
var params = url.substr(index);
var arr = params.split('&');
var o = {};
for (var i = 0; i < arr.length; i++) {
var tmpArr = arr[i].split('=');
var key = tmpArr[0];
var value = tmpArr[1];
o[key] = value;
}
return o;
}
var obj = getParams(url);
console.log(obj);
js入门之字符串常用的方法的更多相关文章
- js经典试题之常用的方法
js经典试题之常用的方法 1.下面代码输出的值 let s = "bob" const replaced = s.replace('b', 'l') replaced === &q ...
- python3【基础】-字符串 常用的方法
字符串一个最重要的特性就是不可修改. name.capitalize() 首字母大写 name.casefold() 大写全部变小写 name.center(50,"-") 输出 ...
- Python语言学习:字符串常用的方法
python字符串常用的方法 1. find( ):在字符串中搜索指定的值并返回它被找到的位置,如果没有找到,则返回-1 string.find(value,start,end) #value:必需, ...
- python字符串常用的方法解析
这是本人在学习python过程中总结的一些关于字符串的常用的方法. 文中引用了python3.5版本内置的帮助文档,大致进行翻译,并添加了几个小实验. isalnum S.isalnum() -> ...
- JS生成随机字符串的多种方法
这篇文章主要介绍了JS生成随机字符串的方法,需要的朋友可以参考下 下面的一段代码,整理电脑时,记录备查. <script language="javascript"> ...
- js字符串常用判断方法
转自:http://blog.sina.com.cn/s/blog_6819fa800100j5t6.html 一.方法介绍 function obj$(id) ...
- JS操作字符串常用的方法
JS操作String对象的方法 charAt(index):返回指定索引处的字符串charCodeAt(index):返回指定索引处的字符的Unicode的值concat(str1,str2,...) ...
- js字符串常用的方法总结,及其用法
JS自带函数concat将两个或多个字符的文本组合起来,返回一个新的字符串.var a = "hello";var b = ",world";var c = a ...
- js中数组遍历常用的方法
常见的数组遍历方法,比如 for in,for of, forEach,map,filter,every,some,find,reduce等 1,普通for循环,经常用的数组遍历 var arr = ...
随机推荐
- OMPL RRTConnet 生成路径和可视化
默认规划路径算法和RRTConnet路径规划算法生成路径 1. 源代码 #include <ompl/base/SpaceInformation.h> #include <ompl ...
- 安装私有docker仓库
简介: 虽然国内已经有了很多docker加速镜像,以前用的daocloud,最近又找到了阿里云. 但是私有网络部署kubernetes,用不了加速镜像,还是自己部署一个比较好. 一:安装docker ...
- 【k8s node断电重启】
kubernetes断电重启 导致部分pod无法删除 dashboard上处于黄色 kubectl get处于terminate 状态 kubectl delete报错: An error occur ...
- ACS712电流传感器应用
1. 原理图 其中第7脚输出的是电压值,那么电压值和测量的电流什么关系?看下图,有3个量程,我用的是20A电流的,100mv电压对应1A电流 看下图,不同的温度会有影响,不过区别不大 最后计算的公式是 ...
- docker 安装 tomcat8
docker hub 查找 tomcat meiya@meiya:/etc/docker$ docker search tomcat NAME DESCRIPTION STARS OFFICIAL A ...
- Appium移动自动化测试-----(六)4.运行第一个Appium脚本
新建maven空白工程 前置条件:安装eclipse或IntelliJ IDEA,及其maven插件,请自行百度 新建的工程如下: 新建目录apps,并将下载的安装包,拷贝到该目录下 打开POM增加依 ...
- Eclipse+TestNG搭建接口自动化测试框架
一.环境安装 1.前提 安装好jdk 配置好Java环境变量 安装Eclips 这些网上都有,就不再详细介绍. 资源分享链接:http://pan.baidu.com/s/1v9Fw6 2.安装Tes ...
- SpringBoot集成ActiveMq消息队列实现即时和延迟处理
原文链接:https://blog.csdn.net/My_harbor/article/details/81328727 一.安装ActiveMq 具体安装步骤:自己谷歌去 二.新建springbo ...
- 开源软件“meld”-替代beyond compare -- & 放在linux命令后面真好用
1, 使用技巧 命令行直接对比文件 meld dir1 dir2 & 亦可以直接打开界面进行类似beyondCompare的操作. { & 放在命令后面表示设置此进程为后台进程 默认情 ...
- SpringBoot部署到Linux上AppserverApplication,访问不到控制层
放在本地是好好的,可以请求到,放到Linux上去的话就直接404, 解决办法: SpringBoot有个加载类叫AppserverApplication.这个大家应该都知道,我们平常都是如下写: @S ...