学习篇之String()
// 3个特殊的引用类型:Boolean,Number,String
var s1 = "some text";
var s2 = s1.substr(,); // me t
var s3 = s1.substring(,); // me
var s4 = s1.substring(,-); // so 负数为0
var s5 = s1.substr(,-); // me text
console.log(s5); // 后台自动完成部分
// (1)创建String类型的一个实例;
// (2)在实例上调用制定的方法;
// (2)销毁这个实例;
// 可以将以上三个步骤想象成了下列ECMAScript;
var s1 = new String("some text");
var s2 = s1.substring();
s1 = null; // 引用类型与基本包装类型主要区别在于对象的生存期;
// 基本包装类型 在一行代码执行完后立即被销毁;
// 引用数据类型 在离开作用域前都一直保存在内存中;
var col = "red";
col.color = "bule";
console.log(col.color); // undefined
console.log(typeof(col)); // 将数值转换为字符创
var num = ;
console.log(typeof(num)); // number
var numStr = num.toFixed();
console.log(typeof(numStr)); // string //string类型
var stringVal = "ceshistring";
console.log(stringVal.length); //
console.log(stringVal.charAt()); // c
// charAt() 接受字符串索引,返回字符串
console.log(stringVal.charCodeAt()); // 99
// charCodeAt() 接受字符串索引,返回字符串的字符串编码
console.log(stringVal[]) // c
// 另一种方法
// fromCharCode();与charCodeAt() 方法相反 string构造函数本身的一个静态方法
var abc = String.fromCharCode(,,);
console.log(abc); // 操作字符串的方法
// concat()
var stringVal1 = "hello ";
var result = stringVal1.concat("world","!"); // 可以接受多个参数
console.log(result); // hello world!
console.log(stringVal1); // hello // slice() 复制 substring() substr()截取字符串 ; 返回一个人新的字符串,并不会修改字符串本身
var str1 = "html css";
console.log(str1.slice(,)); // tm (为负数时,字符串的长度+负值)
console.log(str1.substr(,)); // tml
console.log(str1.substring(,)); // tm // 字符串位置方法
// indexOf() 和 lastIndexOf() 搜索字符串,返回字符索引,没有返回-1,索引开始位置
var url1 = "url(http://localhost:63342/WZDK/uploads/F3.jpg)";
var index = url1.indexOf("(")+;
var lastindex = url1.lastIndexOf(")");
console.log(url1.substring(index,lastindex)); var stringVal2 = "asdasdasdasd";
var positions = [];
var pos = stringVal2.indexOf("a");
while(pos > -){
positions.push(pos);
pos = stringVal2.indexOf("a",pos+);
}
console.log(positions); // trim()方法 ECMAScript 去除字符串两端的空格;返回一个新字符串,原字符串不会改变;
var str2 = " hello ";
console.log(str2+"-"+str2.length); // hello -9
var str3 = str2.trim( );
console.log(str3+"-"+str3.length); // hello-5 // 大小写转换 toLowerCase()/toLocaleLowerCase() 小写转换 toUpperCase()/toLocaleUpperCase() 大学转换
// 针对特定时区的实现
var low = "hello A";
var lowa = low.toUpperCase();
var lowb = low.toLowerCase();
console.log(lowa); // HELLO A
console.log(lowb); // hello a // 字符串的模式匹配方法
// match() 本质上调用 RegExp 的 exec()的方法相同。接受一个参数正则表达式或 RegExp 对象。
// 返回一个数组;
var text = "cat,bat,sat,fat";
var pattern = /.at/;
var matches = text.match(pattern);
console.log(matches); // ["cat", index: 0, input: "cat,bat,sat,fat"]
console.log(matches.index); // cat
console.log(matches[]); // 0 // search() 参数同上,返回第一个查找到的索引,没有查到返回-1;
var sear = text.search(/at/);
console.log(sear); // 1 // 替换字符串 replace(); 第一个参数可以使RegExp对象或者一个字符串(不会转化正则表达式)
// 第二个参数可以是一个字符串或函数;
var text1 = "cat,bat,sat,fat";
var re1 = text1.replace("at","only");
console.log(re1); // conly,bat,sat,fat
re1 = text1.replace(/at/g,"only"); // 不添加引号
console.log(re1); // conly,bonly,sonly,fonly
re1 = text1.replace(/(.at)/g,"word ($1)");
console.log(re1); // word (cat),word (bat),word (sat),word (fat) function htmlEscape(text){
return text.replace(/[<>"&]/g,function(match,pos,originalText){
switch(match){
case "<":
return "<";
case ">":
return ">";
case "\"":
return """;
case "&":
return "&";
}
});
}
document.write(htmlEscape('<p>"&hello"</p>'));
console.log(htmlEscape('<p>"&/hello"</p>')); // split() 将一个字符串制定分割多个子字符串,保存到一个新的数组中;
// 第一个参数分隔符可以是字符串,也可以是RegExp对象,第二个用于制定数组的大小
var colorT = "red,blue,black,yellow";
var col1 = colorT.split(",");
console.log(col1); // ["red","blue","black","yellow"]
var col2 = colorT.split(",",); // 超出数组,显示完整数组
console.log(col2); // ["red", "blue", "black"] // localeCompare() 比较两个字符串编码
学习篇之String()的更多相关文章
- 鸟哥Linux私房菜基础学习篇学习笔记1
鸟哥Linux私房菜基础学习篇学习笔记1 第三章 主导分区(MBR),当系统在开机的时候会主动去读取这个区块的内容,必须对硬盘进行分区,这样硬盘才能被有效地使用. 所谓的分区只是针对64Bytes的分 ...
- J2EE学习篇之--Struts1详解
今天来看一下Struts1的相关知识,其实Struts现在是出名的,每个Web开发者都会知道的,也是现在比较流行的框架,下面就来看一下我们为什么要用Struts框架呢? 摘要 1.建立在mvc这种好的 ...
- python-基础学习篇(一)
python基础学习(一) 不积硅步,无以至千里.基础的学习越加透彻,才能更清楚的理解和分析需求,我贯彻基础学习“永无止境”的理念,故把自学的知识梳理在博客中,基础学习篇无限更新. python介绍 ...
- C++入职学习篇--代码规范(持续更新)
C++入职学习篇--代码规范(持续更新) 一.头文件规范 在头文件中大家一般会定义宏.引入库函数.声明.定义全局变量等,在设计时最后进行分类,代码示范(自己瞎琢磨的,请多多指点): #ifndef T ...
- JavaWeb学习篇之----自定义标签&&JSTL标签库详解
今天来看一下自定义标签的内容,自定义标签是JavaWeb的一部分非常重要的核心功能,我们之前就说过,JSP规范说的很清楚,就是Jsp页面中禁止编写一行Java代码,就是最好不要有Java脚本片段,下面 ...
- js学习篇1--数组
javascript的数组可以包含各种类型的数据. 1. 数组的长度 ,直接用 length 属性; var arr=[1,2,3]; arr.length; js中,直接给数组的length赋值是会 ...
- Tomcat集群配置学习篇-----分布式应用
Tomcat集群配置学习篇-----分布式应用 现目前基于javaWeb开发的应用系统已经比比皆是,尤其是电子商务网站,要想网站发展壮大,那么必然就得能够承受住庞大的网站访问量:大家知道如果服务器访问 ...
- (转载)OC学习篇之---概述
前言 终于开启了OC的学习篇了,之前由于工作上的事,学习就一直搁浅了,不过最近由于各种原因,感觉必须要开启iOS的开发旅程了,不然就老了.因为之前一直是做Android的,所以学习iOS来就没那么费劲 ...
- 《Mysql 公司职员学习篇》 第二章 小A的惊喜
第二章 小A的惊喜 ---- 认识数据库 吃完饭后,小Y和小A回到了家里,并打开电脑开始学习Mysql. 小Y:"小A,你平时的Excell文件很多的情况下,怎么样存放Exce ...
随机推荐
- STM32之FreeRTOS
STM32之FreeRTOS http://www.freertos.org/index.html http://www.freertos.org/a00090.html#ST http://www. ...
- phpstrom 2016.2 注册服务器地址
无意中发现的,亲测可用:http://114.215.133.70:41017
- openstack controller ha测试环境搭建记录(四)——配置mysql数据库集群
内容正式开始前,我已经在集群中添加了新的节点controller1(IP地址为10.0.0.14). 在所有节点上安装软件:# yum install -y mariadb-galera-server ...
- 不同版本的mysql字符集的默认编写
原来在5.1版本时,为了解决中文乱码问题设置默认字符集为utf8时,在my.ini内的 [mysql] 和 [mysqld] 项中都是写: default-character-set=utf8 到了5 ...
- Extjs5.0中的新特性
We are excited that Ext JS 5 is now available! Ext JS 5 introduces many new and exciting improvement ...
- axis2开发实例(一)
主要参考<axis2之webservice新手超详细教程http://wenku.baidu.com/view/6eae036d011ca300a6c390a4.html> <axi ...
- MQTT研究
http://www.jianshu.com/collection/1c742515f8d8 http://blog.csdn.net/gaojq_ios/article/details/481597 ...
- X-006 FriendlyARM tiny4412 u-boot移植之Debug串口用起来
<<<<<<<<<<<<<<<<<<<<<<<<< ...
- 分页。php 引用代码
<?php /** file: page.class.php 完美分页类 Page */ class Page { private $total; //数据表中总记录数 private $lis ...
- [转]centos 6.5安装caffe
centos 6.5安装caffe 原文地址:http://blog.csdn.net/wqzghost/article/details/47447377 总结:在安装protobuf,hdf5等 ...