您现在的位置是:首页 > 正文

JavaScript中的字符串(string)对象及处理字符串的方法

2024-02-01 01:52:40阅读 3

补:冒泡牌排序
解析:1.比较相邻的两个元素,如果前一个比后一个大,则交换位置。
            2.第一轮的时候最后一个元素应该是最大的一个。
            3.按照步骤一的方法进行相邻两个元素的比较,这个时候由于最后一个元素已经是最大的了,所以最后一个元素不用比较

案例

<!DOCTYPE html>
<html>

	<head>
		<meta charset="utf-8" />
		<title></title>
		<script type="text/javascript">
//			第一种
			var arr = [23, 1, 2, 0, 11];
			var times = 0;
			for(var i = 0; i < arr.length - 1; i++) { //控制比较的轮数
				for(var j = 0; j < arr.length - i - 1; j++) { //控制比较的次数
					var temp;
					if(arr[j] > arr[j + 1]) { //如果前面的数据比后面的大就交换
						temp = arr[j];
						arr[j] = arr[j + 1];
						arr[j + 1] = temp;
					}
				}
			}
			for(var i = 0; i < arr.length; i++) {
				document.writeln(arr[i]);
			}
			document.write('<hr/>');
//			第二种
			var arr = [23, 1, 2, 0, 11];
			var times = 0;
			for(var i = 0; i < arr.length - 1; i++) {
				for(var j =j + 1; j < arr.length; j++) {
					var temp;
					if(arr[i] > arr[j]) { //如果前面的数据比后面的大就交换
                        temp = arr[i];
						arr[i] = arr[j];
						arr[j] = temp;
					}
					console.log('第'+(++times)+'次排序结果为:'+arr);
					}
			}
		</script>
	</head>

	<body>

	</body>

</html>

字符串(String)对象及处理字符串的方法

JavaScript 中常用的内置对象有很多种。所谓的内置对象,跟内置函数理解类似,说白了就是 JavaScript 内部定义好的东西,可以让我们直接拿来用而无需自己定义。

比较常用的 JavaScript 内置对象主要有以下几种:
(1)字符串对象 String;
(2)日期对象 Date;
(3)数组对象 Array;
(4)数值对象 Math 和 Number

1. 字符串的属性 length 的介绍

在 JavaScript 中,对于字符串来说,要掌握的属性就只有一个,那就是 length属性。我们可以通过 length 属性来获取字符串的长度。

语法:字符串名称.length
2. 处理字符串方法的介绍

(1) Match()方法的介绍

在 JavaScript 中,使用 match()方法可以从字符串内索引指定的值,match()方法类似于 indexOf()方法,但是它返回的是指定的值,而不是字符串的位置

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
//			(1)match():返回指定的值
			var str1='Html css JavaScript';
			document.write(str1.match('Html'));  //返回Html
			document.write(str1.match('html'));   //返回null
			document.write(str1.match('JavaScript'));  //返回JavaScript
		</script>
	</head>
	<body>
	</body>
</html>

(2) Search()方法

在 JavaScript 中,search() 方法用于检索字符串中指定的子字符串,在字符串中检索的字符串不存在则返回-1, 存在返回索引位置,是以子字符串的首个字符索引输出

var str2='I Love JavaScript';
document.write(str2.search('Love'));//返回2
document.write(str2.search('love'));//返回-1

(3) IndexOf()方法:返回在字符串元素第一次出现的索引位置

 var str2='I Love JavaScript';
 document.writeln(str2.indexOf('a','0'));//返回结果是8
 document.writeln(str2.indexOf('a',0));//返回结果是8
 document.write(str2.indexOf('a',9));//返回结果为10
 document.write(str2.indexOf('a',16));//返回结果为-1,表示没有查询到数据

(4) Replace()方法:在字符串中用一些字符串替换另一些字符串 ,其中第一个值为旧字符,第二个值为新字符

var str2='I Love JavaScript';
document.writeln(str2.replace('Love','like'));//返回结果为I like JavaScript

(5)charAt()用来获取字符串中某一个字符,n表示的是字符串中字符的下标

var str3='what are you 弄啥嘞';
document.write(str3.charAt(4)); //输出空格
document.write(str3);  //输出字符串
for(var i=0;i<str3.length;i++){
	document.write(str3.charAt(i)+'-');
}

(6)字符串大小写的转换: toUpperCase() 大写, toLowerCase()小写,其中,toLowerCase()方法将大写字符串转换为小写字符串;
toUpperCase()将小写字符串转换为大写字符串

var str4='I have a Dream';
//转换为大写
document.write(str4.toUpperCase());
//转换为小写
document.write(str4.toLowerCase());

(7)concat():连接字符串, 可以连接 2 个或多个字符串。

语法:字符串 1.concat(字符串 2,字符串 3,…,字符串 n);

说明:concat()方法将“字符串 2,字符串 3,…,字符串 n”按照顺序连接到字符串 1的尾部,并返回连接后的字符串

例1:

        var str5='I like red';
//		document.write(str5.concat(' and yellow......','you too'));
		var str6=str5.concat(' and yellow......','you too');
//		alert(str5);  显示的结果还是为 'I like red'
		document.write(str6);

例2:

<script type="text/javascript">
var str1="毛扇指千阵,";
var str2="铁马踏冰河,";
var str3="黄沙破楼兰。";
var str4=str1+str2+str3;
var str5=str1.concat(str2,str3);
document.write(str4+"<br/>");
document.write(str5);
</script>

(8) 比较字符串localeCompare()

语法:字符串 .localeCompare(字符串 2)
说明:比较完成后,返回值是一个数字。
(1)如果字符串 1 小于字符串 2,则返回小于 0 的数字;
(2)如果字符串 1 大于字符串 2,则返回数字 1;
(3)如果字符串 1 等于字符串 2,则返回数字 0;

var str7="AavaScript";
var str8="bvaScript";
document.write(str7.localeCompare(str8));//返回-1
document.write('<hr />');
var str7="AavaScript";
var str8="AvaScript";
document.write(str7.localeCompare(str8));//返回0

(9) 分割字符串 split()方法 

语法:字符串.split(分隔符)
说明:返回结果为一个数组,分割符可以是一个字符、多个字符或一个正则表达式。分割符并不作为返回数组元素的一部分

           var str9='I Love JavaScript';
           var arr_01=str9.split(' ');
           alert(arr_01);//返回I,Love,JavaScript
 //        alert(arr_01.length);//返回3

(10)从字符串截取字符串 用来提取字符串中的某一部分字符串

语法:字符串.substring(开始位置,结束位置)
说明:开始位置是一个非负的整数,表示从哪个位置开始截取。结束位置也是一个非负的整数,表示在哪里结束截取。

            var str9=',I LoveJavaScript,';
            document.write(str9.substring(2,5));//返回Lov
//			document.write(str9.substring(1,str9.length-1));//返回Love JavaScrip 
//			document.write(str9.substring(2,0));//返回 I	
			document.write(str9.substring(0,100));//返回I Love JavaScript

			

 

问题: substring()和substr()之间的区别?
(1)只有一个参数时,输出结构相同
(2)两个参数时,substring是获取从start开始到end之间的字符串,而substr是获取从start开始后end的字符串,(即从substr接收的则是
起始位置和所要返回的字符串长度。)  substring不包含end位的字符串,substr包含.

           var str10='ILoveJavaScript';
           document.writeln(str10.substring(2,5));//返回ove
           document.writeln(str10.substr(2,5));//返回oveJa

问题:按照字符串的每一个字符输出到页面?

//           遍历数组
            var str='what are you doing?';
			for(var i = 0; i < str.length; i++) {
				document.write(str.charAt(i) + '-');
			}
			document.write('<br />');

问题: 将每一个字符放置到一个数组中?


		<script type="text/javascript">
			var str='what are you doing?';
			var strString = new Array();
			for(var i = 0; i < str.length; i++) {
				strString[i] = str.charAt(i);
			}
//			document.write(strString);
			for(var i = 0; i < strString.length; i++) {
				document.write(strString[i]);
			}
		</script>

 

网站文章

  • Windows SharePoint Services 3.0 应用程序模板

    微软发布的一些WSS模板,看了一下,跟以前看到的模板好像不同模板分两类,一类是站点管理模板,一类是服务器管理模板站点管理模板:董事会、业务绩效报告、政府机构案例管理、课堂管理、临床试验启动和管理、竞争性分析站点、讨论数据库、争议发票管理、员工活动站点、员工自助福利、员工培训计划和材料、证券研究、集成营销活动跟踪、制造流程管理、新店开张、产品和营销需求计划、招标书、体育联盟、团队合作站点...

    2024-02-01 01:52:33
  • 简述JS中的面向对象编程 热门推荐

    简述JS中的面向对象编程 热门推荐

    简述JS中的面向对象编程背景介绍在 JavaScript 中,大多数事物都是对象, 从作为核心功能的字符串和数组,到建立在 JavaScript 之上的浏览器API。你甚至可以自己创建对象,将相关的函...

    2024-02-01 01:52:06
  • RocketMQ 消息消费

    RocketMQ 消息消费

    本章主要分析 RocketMQ 如何消费消息,重点剖析消息消费的过程中需要解决的问题 。 ·消息队列负载与重新分布 ·消息消费模式 ·消息拉取方式 ·消息进度反馈 ·消息过滤 ·顺序消息 1 Rock...

    2024-02-01 01:51:57
  • Odoo ORM API(六)- Inheritance and extension and Domains

    Odoo ORM API(六)- Inheritance and extension and Domains

    Inheritance and extensionOdoo 提供了三种不同机制用来扩展models in a modular way:继承一个已经存在的model,添加一些新的属性或者方法,但是,源model不会增加属性或方法,只是自己改变在另外一个 Odoo module 中,直接扩展源model,给他添加新的属性或方法,而不用去修改源码delegating some of the mode

    2024-02-01 01:51:51
  • 【Python】格式化字符串输出

    一 简介 python 字符串输出格式化有两种方式 %[s,d,] ,python 2.6 版本提供了string.format(),其功能也相当强大。talk is cheap,show me the code ....

    2024-02-01 01:51:44
  • vue常用修饰符

    一、v-model修饰符1、.lazy:输入框改变,这个数据就会改变,lazy这个修饰符会在光标离开input框才会更新数据2、.trim:输入框过滤首尾的空格<input type="text" v...

    2024-02-01 01:51:18
  • 判断一个字符串中是否包含中文字符

    判断一个字符串中是否包含中文字符

    判断一个字符串中是否包含中文字符

    2024-02-01 01:51:12
  • docker部署前后端分离项目

    docker部署前后端分离项目

    一、操作系统准备:centos7.8二、docker环境准备:参考:Install Docker Engine on CentOS | Docker Documentation(1)卸载之前版本sud...

    2024-02-01 01:51:05
  • Python之异常设计(一)

    一 定义 异常分为两类:一类是自动触发异常如除零错误;另一类是通过raise触发。 二 为什么要使用异常 当程序运行时,如果检测到程序错误,Python就会引发异常,我们可以在程序中使用try语句捕获异常,并对异常进行处理。如果我们不做异常的捕获,异常就会一直往上层抛出,直到顶层Python的默认异常处理器,默认异常处理器将会停止程序并打印异常,这通常会引起程序崩溃,造成不好的用户体验,...

    2024-02-01 01:50:35
  • Redis 高可用之持久化

    Redis 高可用之持久化

    在web服务器中,高可用是指服务器可以正常访问的时间,衡量的标准是在多长时间内可以提供正常服务(99.9%、99.99%、99.999%等等)。但是在Redis语境中,高可用的含义似乎要宽泛一些,除了保证提供正常服务( 如主从分离、快速容灾技术),还需要考虑数据容量的扩展、数据安全不会丢失等。

    2024-02-01 01:50:29