JavaScript 初级入门加详解(六)——对象分类

本文详细介绍了JavaScript中的对象分类(内部、宿主和自定义对象),以及创建数组的不同方式和sort方法,还涵盖了字符串对象的常用方法,如字符操作、分割、替换和大小写转换等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、对象分类

在javascript中,可以将对象分为“内部对象”、“宿主对象”和“自定义对象”三种。

1.内部对象分为本地对象和内置对象

1.1 本地对象

JS中的本地对象包括Number、String、Boolean、Array、Function、Date、Object、RegExp等

Global和Math这两个对象又被称为“内置对象”,这两个对象在脚本程序初始化时被创建,不必实例化这两个对象。

1.2 内置对象

内置对象(built-in object)定义为“由 ECMAScript 实现提供的,在 ECMAScript 程序开始执行时出现”。这意味着开发者不必明确实例化内置对象,它已被实例化了。

2.宿主对象

宿主对象就是执行JS脚本的环境提供的对象。对于嵌入到网页中的JS来说,其宿主对象就是浏览器提供的对象,所以又称为浏览器对象,如IE、Firefox等浏览器提供的对象。不同的浏览器提供的宿主对象可能不同,即使提供的对象相同,其实现方式也大相径庭!这会带来浏览器兼容问题,增加开发难度。浏览器对象有很多,如Window和Document等等。

3.自定义对象

顾名思义,就是开发人员自己定义的对象。JS允许使用自定义对象,使JS应用及功能得到扩充。

 二、创建数组的两种方式

  • 字面量方式

     var arr = [1,"test",true];
  • new Array()

    var arr = new Array();

注意:上面代码中arr创建出的是一个空数组,如果需要使用构造函数Array创建非空数组,可以在创建数组时传入参数

参数传递规则如下:

  • 如果只传入一个参数,则参数规定了数组的长度

  • 如果传入了多个参数,则参数称为数组的元素

三、数组对象

3.1 创建数组的两种方式

  • 字面量方式

     var arr = [1,"test",true];
  • new Array()

 var arr = new Array();

注意:上面代码中arr创建出的是一个空数组,如果需要使用构造函数Array创建非空数组,可以在创建数组时传入参数

参数传递规则如下:

  • 如果只传入一个参数,则参数规定了数组的长度

  • 如果传入了多个参数,则参数称为数组的元素

3.2 数组对象的方法sort

sort()
功能描述对数组的元素进行排序(默认是从小到大来排序 并且是根据字符串来排序的)
语法array.sort(sortfunction)
参数sortfunction:可选。规定排序顺序。必须是函数。
返回值排序后新数组
是否改变原数组改变
 var ary1 = [32,44,23,54,90,12,9]; 
 ary1.sort(function(a,b){
 // return a-b;  // 结果[9, 12, 23, 32, 44, 54, 90]
 // return b-a;  // 结果[90, 54, 44, 32, 23, 12, 9]
 })  
 console.log(ary1);

注意:sort在不传递参数情况下,只能处理10以内(个位数)数字排序

三、字符串对象

3.1 String对象方法

创建字符串对象

var str = new String('Hello World');

// 获取字符串中字符的个数
console.log(str.length);

四、字符串对象的常用方法

需要注意的是字符串所有的方法,都不会修改字符串本身(字符串是不可变的),操作完成会返回一个新的字符串。

4.1 字符方法

1. charAt()
2. charCodeAt()
charCodeAt()
功能描述可返回指定位置的字符的 Unicode 编码()
语法string.charCodeAt(index)
参数index -- 字符的索引。
返回值返回在指定的位置的字符的 Unicode 编码。
3. fromCharCode()
fromCharCode()
功能描述可接受一个指定的 Unicode 值作为参数,然后返回相应字符
语法String.fromCharCode(number1,number2,....numberX )
参数必需。一个或多个 Unicode 值,即要创建的字符串中的字符的 Unicode 编码
返回值返回代表 Unicode 编码的字符。

charAt()
功能描述返回指定索引处的字符。索引范围为从 0 到 length- 1
语法string.charAt(index)
参数index -- 字符的索引。
返回值返回指定索引处的字符。

4.2 字符串操作方法

1.concat()
concat()
功能描述用于连接两个或多个字符串。
语法string.concat(string1, string2, ..., stringX)
参数必需。将被连接为一个字符串的一个或多个字符串对象。
返回值两个或多个字符串连接后生成的新字符串。
2.slice()
slice()
功能描述提取字符串的片断,并在新的字符串中返回被提取的部分。
语法slice(start,end)
参数start必须. 要抽取的片断的起始下标。第一个字符位置为 0 end可选。 紧接着要截取的片段结尾的下标。若未指定此参数,则要提取的子串包括 start 到原字符串结尾的字符串。如果该参数是负数,那么它规定的是从字符串的尾部开始算起的位置。
返回值提取的字符串
3.substring()
substring()
功能描述用于提取字符串中介于两个指定下标之间的字符。
语法substring(from,to)
参数from必需。一个非负的整数,规定要提取的子串的第一个字符在 string Object 中的位置。to可选。一个非负的整数,规定要提取的子串结束位置的下标(不包含)。 如果省略该参数,那么返回的子串会一直到字符串的结尾。
返回值提取后生成的新字符串。
4.substr()
substr()
功能描述可在字符串中抽取从 开始 下标开始的指定数目的字符。
语法substr(start,length)
参数start必需。要抽取的子串的起始下标。必须是数值。如果是负数,那么该参数声明从字符串的尾部开始算起的位置。也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推。length可选。子串中的字符数。必须是数值。如果省略了该参数,那么返回从 stringObject 的开始位置到结尾的字串。
返回值抽取从 开始 下标开始的指定数目的字符
5.split()
split()
功能描述用于把一个字符串分割成字符串数组。
语法split(separator,limit)
参数separator可选。字符串或正则表达式,从该参数指定的地方分割 string Object。 limit*可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。
返回值一个字符串数组。该数组是通过在 separator 指定的边界处将字符串 string Object 分割成子串创建的。返回的数组中的字串不包括 separator 自身

4.3 检索方法

1. includes()
includes()
功能描述用于判断字符串是否包含指定的子字符串。
语法array.includes(item, [start])
参数item必需,要查找的字符串。start:可选,设置从那个位置开始查找,默认为 0。 如果该参数为负数,将按照索引为0开始检索
返回值如果找到匹配的字符串返回 true,否则返回 false。
2. indexof()
indexOf()
功能描述返回指定内容在元字符串中的第一次出现的位置。
语法indexOf(item,[start])
参数item 必需,规定需检索的字符串值,start可选的,整数参数。规定在字符串中开始检索的位置。 它的合法取值是 0 到 string Object.length - 1。如省略该参数,则将从字符串的首字符开始检索。 如果该参数为负数,将按照索引为0开始检索。
返回值返回查找指定字符串第一次出现的位置,如果没找到匹配的字符串则返回 -1。
3.lastIndexOf()
lastIndexOf()
功能描述该方法将从后向前检索字符串,返回是从起始位置 (0) 开始计算子字符串最后出现的位置。
语法lastIndexOf(item,[start])
参数item必需。规定需检索的字符串值。start可选的整数参数。规定在字符串中开始检索的位置。 它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的最后一个字符处开始检索。 如果该参数为负数,将按照索引为0开始检索。
返回值返回查找的字符串最后出现的位置,如果没有找到匹配字符串则返回 -1。
4.search()
search()
功能描述方法用于检索字符串中指定的子字符串,或与正则表达式相匹配的子字符串,在字符串中首次匹配项的索引。
语法search(searchvalue)
参数必须。查找的字符串或者正则表达式。
返回值如果匹配成功,则 search() 返回在字符串中首次匹配项的索引;否则,返回 -1
5. 替换方法replace()
replace()
功能描述用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
语法replace(searchvalue,newvalue)
参数searchvalue必需。规定子字符串或要替换的模式的 RegExp 对象。 请注意,如果该值是一个字符串,则将它作为要检索的直接量文本模式,而不是首先被转换为 RegExp 对象。 newvalue必需。一个字符串值。规定了替换文本或生成替换文本的函数。
返回值一个新的字符串,是用 replacement 替换了 regexp 的第一次匹配或所有匹配之后得到的。

4.4 去除空白trim()

trim()
功能描述trim() 方法用于删除字符串的头尾空白符,空白符包括:空格、制表符 tab、换行符等其他空白符等
语法trim()
参数
返回值返回移除头尾空格的字符串。

4.5 大小写转换方法

1.toUpperCase()
toUpperCase()
功能描述所有小写字符全部被转换为大写字符
语法string.toUpperCase()
参数
返回值生成的新字符串。
2.toLowerCase()
toLowerCase()
功能描述所有大写字符全部被转换为小写字符
语法string.toLowerCase()
参数
返回值生成的新字符串。

4.6 总结String 对象操作方法

方法描述
charAt()返回在指定位置的字符。
charCodeAt()返回在指定的位置的字符的 Unicode 编码。
String.fromCharCode()将 Unicode 编码转为字符。
concat()连接两个或更多字符串,并返回新的字符串。
slice()提取字符串的片断,并在新的字符串中返回被提取的部分。不包含结束的索引
substring()提取字符串中两个指定的索引号之间的字符。
substr()从起始索引号提取字符串中指定数目的字符。
split()把字符串分割为字符串数组。
includes()查找字符串中是否包含指定的子字符串。
indexOf()返回某个指定的字符串值在字符串中首次出现的位置。
lastIndexOf()从后向前搜索字符串,并从起始位置(0)开始计算返回字符串最后出现的位置。
search()查找与字符串或正则表达式相匹配的字符。
replace()用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
trim()参数值无。去除字符串前后的空白。
toLowerCase()把字符串转换为小写。
toUpperCase()把字符串转换为大写。

 未完

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值