JavaScript中的内置对象String和它的常用函数以及JavaScript中自定义对象 (笔记)

本文详细介绍了JavaScript中的内置对象String的创建、比较及其常用方法,如charAt、concat、fontcolor、substring和split。同时,通过四种方式展示了自定义对象的创建和使用,包括有参构造、无参构造、使用Object对象以及字面量方式。内容涵盖了对象属性的设置、方法的定义及对象实例的使用。
摘要由CSDN通过智能技术生成

一.JavaScript中的内置对象

1.在Js中如何创建字符串对象

在 JavaScript 中创建String对象的语法格式为:
​	var 对象名 = new String("字符串");

举例:

<script>
	//创建一个变量名为 s1 的 String 对象,值为"hello";
	var s1 = new String("hello");
	//创建一个变量名为 s2 的 String 对象,值为"world";
	var s2 = new String("world");
	//在浏览器中输出
	document.write("s1 = " + s1 + "<br />");
	document.write("s2 = " + s2);
</script>
输出结果:
​	s1 = hello
​	s2 = world

2.Js中String使用 “==” 比较

在js中使用new关键字创建出来的两个值相等的String对象在使用 “==” 来进行比较时,结果毋庸置疑为 false

原因:同Java一样,判断的是两个对象的地址

不使用 new 关键字定义两个值相同的String对象,此时用 “==” 来比较,结果为true

举例:

<script>
	var s1 = new String("hello");
	var s2 = new String("hello");
	
	//js中的balueof()比较的是对象原始值是否相同
	document.write("判断两个对象的值是否相等:" + (s1.valueOf() == s2.valueOf()) + "<br />");//true
	//比较地址是否相等
	var result = (s1 == s2);
	document.write("使用==比较使用new出来的两个值相等的String对象结果:" + result + "<br />");//false
	
	//js中创建对象String,简写格式
	var s3 = "helloworld";
	var s4 = "helloworld";
	var result2 = (s3 == s4);
	document.write("使用==判断两个值相等的直接创建的String对象结果:" + result2 + "<br />");//true
</script>
输出结果:
​	判断两个对象的值是否相等:true
​	使用==比较使用new出来的两个值相等的String对象结果:false
​	使用==判断两个值相等的直接创建的String对象结果:true

二.内置对象String常用的函数

1.charAt(index) : 获取字符串中指定下标的字符;

举例:

<script>
	//定义一个 String 对象 str
	var str = "helloworldJavaEE";
	//charAt(index):获取字符串中指定下标的字符
	document.write("下标为5的字符为:" + str.charAt(5));
</script>
输出结果:
​	下标为5的字符为:w
2.concat(“拼接内容”) : 字符串拼接;
<script>
	//定义一个 String 对象 str
	var str = "helloworldJavaEE";
	//concat("拼接内容"):字符串拼接
	document.write("拼接之后的结果为:" + str.concat("你好世界"));
</script>
输出结果:
​	拼接之后的结果为:helloworldJavaEE你好世界
3.fontcolor() : 给字符串颜色标记(“参数英文单词或者#xxxxxx”)
<script>
	//定义一个 String 对象 str
	var str = "helloworldJavaEE";
	//fontcolor():给字符串颜色标记("参数英文单词或者#xxxxxx")
	document.write("将字符串标记为红色:" + str.fontcolor("red"));
</script>

在这里插入图片描述

4.substring() : 截取 跟Java中的String一样
<script>
	//定义一个 String 对象 str
	var str = "helloworldJavaEE";
	//substring():截取,和Java中的String一样
	document.write("截取的结果为:" + str.substring(5, 10));
</script>
输出结果:
​	截取的结果为:world
5.split() : 分割,获得字符串数组
<script>
	//定义一个字符串
	var str2 = "JavaEE-PhP-Go-R-C-C++";
	//按照"-"进行截取,返回的是一个字符串数组
	var strArray = str2.split("-");
	//for-in遍历这个数组
	for(var i in strArray){
		document.write(strArray[i] + "&nbsp;");
	}
</script>
输出结果:
​	JavaEE PhP Go R C C++ 

三.JavaScript中自定义对象和使用

方式1:类似于Java中的有参构造

格式:

function 对象(属性名称1,属性名称2...){
	//追加它的属性成员
	this.成员属性1 = 属性名称1;
	this.成员属性2 = 属性名称2;
	//追加功能
	this.方法名 = function(空参/带参){
	...
	}
}
创建对象
var 对象名 = new 对象(实际参数列表);

举例:

<script>
	// 需求:定义一个人对象,有姓名,年龄,性别,
	// 还有说英语的功能
	function Person(name, age, gender){
		//追加他的成员属性
		this.name = name;
		this.age = age;
		this.gender = gender;
		//追加功能
		this.speakEnglish = function(name){
		   document.write(this.name + "会说" + name);
		}
	}
	
	//创建Person对象
	var p = new Person("猴子", 18, "男");
	document.write("姓名是:" + p.name + ",年龄是:" + p.age 
					+ ",性别是:" + p.gender + "<br />");
	//调用功能	
	p.speakEnglish("英语");
</script>
输出结果:
	姓名是:猴子,年龄是:18,性别是:男
	猴子会说英语
方式2:类似于Java中的无参构造

格式:

​ 方式2:类似于Java中的无参构造
​ 1.定义对象的格式:function 对象(){}
​ 2.创建对象 var 对象名 = new 对象();
​ 追加属性和追加功能
​ 对象名.属性名称 = “值”;
​ 对象名.方法名 = function(){}…

举例:

<script>
	//定义对象
	function Person2(){}
	//创建Person2对象
	var p2 = new Person2();
	//追加属性和追加功能
	p2.name = "八戒";
	p2.age = 19;
	p2.gender = "女";
	p2.playGame = function(gameName){
	 document.write(this.name + "会玩"+gameName);
	}
	 
	 //使用
	document.write("姓名是:" + p2.name + ",年龄是:" + p2.age 
                   + ",性别是:" + p2.gender + "<br/>") ;
	p2.playGame("csgo") ;
</script>
输出结果:
​	姓名是:八戒,年龄是:19,性别是:女
​	八戒会玩csgo
方式3:使用 Object 对象(代表所有Js对象)

格式:

​ 直接 new 对象
​ 追加属性和追加功能

举例:

<script>
	//直接 new 对象
	var p3 = new Object();
	//追加属性和追加功能
	p3.name = "沙僧" ;
	p3.age = 20 ;
	p3.gender = "男" ;
	p3.speakEnglish = function(name){
		document.write(p3.name + "会说" + name) ;		   
	}
	
	//使用
	document.write("姓名是:" + p3.name + ",年龄是:" + p3.age
    			+ ",性别是:" + p3.gender + "<br/>") ;
	p3.speakEnglish("英语") ;
</script>
输出结果:
​	姓名是:沙僧,年龄是:20,性别是:男
​	沙僧会说英语
方式4:字面值的方式 “Json数据格式”

基本格式:{“key”:value} 这种键值对:

var 对象名= {
	//追加属性
	"属性名1":"值1",
	"属性名2" : 值2,
	...
	//追加功能
	"函数名":function(形式参数列表){
	方法体语句;
	}
​};

举例:

<script>
	//需要描述一个学生---->姓名,年龄,性别,住址,会玩游戏的功能
	var student = {
					//追加属性
					"name":"小明",
					"age" : 21,
					"gender":"男",
					"address":"地球",
					//追加功能
					"playGame":function(gameName){
						document.write("会玩"+gameName+"<br/>") ;
					}
	};
	//使用对象.key获取value
	document.write("姓名 : " + student.name + ",年龄 : " 
				+ student.age + ",性别 : " + student.gender 
				+ ",住址 : "  + student.address + "<br/>") ;
	student.playGame("lol") ;
</script>
输出结果:
​	姓名 : 小明,年龄 : 21,性别 : 男,住址 : 地球
​	会玩lol
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值