电脑培训分享JavaScript编程开发对象的类型

电脑培训分享JavaScript编程开发对象的类型,第1张

随着互联网的不断发展,我们在学编程开发语言的时候都需要对不同的编程语言进行分析,而今天电脑培训就一起来了解一下,JavaScript编程中的对象类型做一个简单介绍。

什么是对象

我们先来说说什么是对象,因为翻译的原因,中文语境下我们很难理解“对象”的真正含义。事实上,Object(对象)在英文中,是一切事物的总称,这和面向对象编程的抽象思维有互通之处。中文的“对象”却没有这样的普适性,我们在学习编程的过程中,更多是把它当作一个专业名词来理解。

但不论如何,我们应该认识到,对象并不是计算机领域凭空造出来的概念,它是顺着人类思维模式产生的一种抽象(于是面向对象编程也被认为是:更接近人类思维模式的一种编程范式)。

那么,我们先来看看在人类思维模式下,对象究竟是什么。

对象这一概念在人类的幼儿期形成,这远远早于我们编程逻辑中常用的值、过程等概念。在幼年期,我们总是先认识到某一个苹果能吃(这里的某一个苹果就是一个对象),继而认识到所有的苹果都可以吃(这里的所有苹果,就是一个类),再到后来我们才能意识到三个苹果和三个梨之间的联系,进而产生数字“3”(值)的概念。

JavaScript对象的特征

在我看来,不论我们使用什么样的编程语言,我们都先应该去理解对象的本质特征(参考GrandyBooch《面向对象分析与设计》)。总结来看,对象有如下几个特点。

对象具有标识性:即使完全相同的两个对象,也并非同一个对象。

对象有状态:对象具有状态,同一对象可能处于不同状态下。

对象具有行为:即对象的状态可能因为它的行为产生变迁。

JavaScript对象的两类属性

对JavaScript来说,属性并非只是简单的名称和值,JavaScript用一组特征(attribute)来描述属性(property)。

使用JavaScript中ActiveXObject 对象的方法

语法

newObj = new ActiveXObject(servernametypename[, location])

参数

newObj:必选。   ActiveXObject 分配到的变量名称。

servername:必选。  提供对象的应用程序的名称。

typename :必选。  要创建的对象的类型或类。

location:可选。  要在其中创建对象的网络服务器的名称。

备注

自动化服务器至少提供一种对象。  例如,字处理应用程序可能会提供应用程序对象、文档对象和工具栏对象。

你可以在 HKEY_CLASSES_ROOT 注册表项中标识宿主 PC 上的 servernametypename 值。  例如,下面是可在此处找到的几个值示例,具体取决于安装的程序:

ExcelApplication

ExcelChart

ScriptingFileSystemObject

WScriptShell

WordDocument

要求

在以下文档模式中受支持:Quirks、Internet Explorer 6 标准、Internet Explorer 7 标准、Internet Explorer 8 标准、Internet Explorer 9 标准、Internet Explorer 10 标准和 Internet Explorer 11 标准。  在 Windows 8x 应用商店应用中不受支持。  请参见JavaScript 版本信息。

应用相关方法

创建对象实例后,就可以使用对象的相关方法了。比如,使用CreateTextFile方法创建一个文本文件:var fso = new ActiveXObject(“ScriptingFileSystemObject”);var f1 = fsocreatetextfile(“c:\\myjstesttxt”,true”);

访问对象相关属性

要访问对象的相关属性,首先要建立指向对象的句柄,这就要通过get系列方法实现:GetDrive负责获取驱动器信息,GetFolder负责获取文件夹信息,GetFile负责获取文件信息。比如,指向下面的代码后,f1就成为指向文件c:\testtxt的句柄:var fso = new ActiveXObject(“ScriptingFileSystemObject”);var f1 = fsoGetFile(“c:\\myjstesttxt”);然后,使用f1访问对象的相关属性。比如:var fso = new ActiveXObject(“ScriptingFileSystemObject”);var f1 = fsoGetFile(“c:\\myjstesttxt”);alert(“File last modified: ” + f1DateLastModified);执行上面最后一句后,将显示c:\myjstesttxt的最后修改日期属性值。但有一点请注意:对于使用create方法建立的对象,就不必再使用get方法获取对象句柄了,这时直接使用create方法建立的句柄名称就可以:var fso = new ActiveXObject(“ScriptingFileSystemObject”);var f1 = fsocreatetextfile(“c:\\myjstesttxt”,true”);alert(“File last modified: ” + f1DateLastModified);

*** 作驱动器(Drives)

使用FileSystemObject对象来编程 *** 作驱动器(Drives)和文件夹(Folders)很容易,这就象在Windows文件浏览器中对文件进行交互 *** 作一样,比如:拷贝、移动文件夹,获取文件夹的属性。

Drives对象属性

Drive对象负责收集系统中的物理或逻辑驱动器资源内容,它具有如下属性:l TotalSize:以字节(byte)为单位计算的驱动器大小。l AvailableSpace或FreeSpace:以字节(byte)为单位计算的驱动器可用空间。l DriveLetter:驱动器字母。l DriveType:驱动器类型,取值为:removable(移动介质)、fixed(固定介质)、network(网络资源)、CD-ROM或者RAM盘。l SerialNumber:驱动器的系列码。l FileSystem:所在驱动器的文件系统类型,取值为FAT、FAT32和NTFS。l IsReady:驱动器是否可用。l ShareName:共享名称。l VolumeName:卷标名称。l Path和RootFolder:驱动器的路径或者根目录名称。

Drive对象 *** 作例程

下面的例程显示驱动器C的卷标、总容量和可用空间等信息:var fso, drv, s =”";fso = new ActiveXObject(“ScriptingFileSystemObject”);drv = fsoGetDrive(fsoGetDriveName(“c:\\”));s += “Drive C:” + ” – “;s += drvVolumeName + “\n”;s += “Total Space: ” + drvTotalSize / 1024;s += ” Kb” + “\n”;s += “Free Space: ” + drvFreeSpace / 1024;s += ” Kb” + “\n”;alert(s);

ActiveX 对象可能存在安全问题。 若要使用 ActiveXObject,你可能需要在相关安全区域的 Internet Explorer 中调整安全设置。 例如,对于本地 Intranet 区域,通常需要将自定义设置更改为“对没有标记为安全的 ActiveX 控件进行初始化和脚本运行”。

如果没有可用的自动化对象的参考文档,则要标识可以在代码中使用的自动化对象的成员,你可能需要使用 COM 对象浏览器,例如 OLE/COM 对象查看器。

重写对象的toString方法,按照json数据的规则

然后前台string转json

控制台打印

这个方法不需要引入其他包

如果map的key属性过多,或者key是集合,可以在后台先转json,然后前台一样String转json,再遍历

需要引入包

前台

基本数据类型(按值访问):Undefined 、 Null 、 Boolean 、 Number 和 String

引用数据类型(按引用访问):object、Array、function

typeof(检测基本数据类型时 typeof 是非常得力的助手)可以返回以下6种类型:undefined  、 boolean 、 number 、string、object(对象和null都是object类型)、function

instanceof(用于检测引用类型):所有引用类型的值都是 Object 的实例,person(引用类型值) instanceof Object永远都是true。

要知道是什么类型的对象,使用instanceof *** 作符接上想要判断的类型,例如colors instanceof Array。

基本数据类型复制:复制的是该变量的副本,这两个变量可以参与任何 *** 作而不会相互影响

引用数据类型复制:复制的是该变量的指针,该指针指向存储在堆中的一个对象。复制 *** 作结束后,两个变量实际上将引用同一个对象。因此,改变其中一个变量,就会影响另一 个变量

传参:基本类型和引用类型全部是按值传递,相当于把参数复制一份给到function的局部变量

为了便于 *** 作基本类型值,ECMAScript 还提供了 3 个特殊的引用类型: Boolean 、 Number 和

String 。

Number 类型重写了 valueOf() 、 toLocaleString() 和 toString()方法。除了继承的方法之外, Number 类型还提供了一些用于将数值格式化为字符串的方法。 toFixed() 方法会按照指定的小数位返回数值的字符串表示。

String 对象的方法也可以在所有基本的字符串值中访问到。其中,继承的 valueOf() 、 toLocale-String() 和 toString() 方法,都返回对象所表示的基本字符串值。String 类型的每个实例都有一个 length 属性。

字符方法:两个用于访问字符串中特定字符的方法是: charAt() 和 charCodeAt() 。

var stringValue = "hello world";

alert(stringValuecharAt(1)); //"e"

alert(stringValuecharCodeAt(1)); // 输出"101",小写字母 "e" 的字符编码

字符串 *** 作方法

1、concat:拼接字符串,可接收任意多字符串,不改变原字符串值,虽然 concat() 是专门用来拼接字符串的方法,但实践中使用更多的还是加号 *** 作符(+)。

var stringValue = "hello ";

var result = stringValueconcat("world", "!");

alert(result); //"hello world!"

alert(stringValue); //"hello"

2、三个基于子字符串创建新字符串的方法: slice() 、 substr() 和 substring() 。都接收1或2个参数。

slice() 、substring()在接收正数参数时,第一个参数是字符串截取的起始位置,第二个是字符串结束位置。

substr()在接收正数参数时,第一个参数同上,第二个参数是截取长度。

当第一个参数为负数的时候,slice()和substr()按照参数+字符串长度结果来截取;substring()将负参数转换为0;

当第二个参数为负数的时候,slice()按照参数+字符串长度结果来截取;substr()和substring()将负参数转换为0;

3、字符串位置方法:有两个可以从字符串中查找子字符串的方法: indexOf() 和 lastIndexOf()

4、trim():删除字符串前后空格,不改变原字符串值

5、字符串大小写转换方法

字符串大小写转换的方法有 4 个: toLowerCase() 、 toLocaleLowerCase() 、 toUpperCase() 和toLocaleUpperCase() 。

6、字符串的模式匹配方法

match() 方法只接受一个参数,要么是一个正则表达式,要么是一个 RegExp 对象。返回数组。

search()参数同上。返回要查找的在字符串中第一次出现的位置。

字符串替换:var result = textreplace("at", "ond");

7、localeCompare() 方法

var stringValue = "yellow";

alert(stringValuelocaleCompare("brick")); //1

在前面返回1,同样位置返回0,在后面返回-1

1字符串创建方式

2string以及任何的js数据都有两种身份:

1)表示自身数据类型

2)表示对象类型身份:对象类型身份给每种数据类型提供了很多的 *** 作方法,便于对数据进行 *** 作

总之就是js中一切皆是对象,可以对其进行相应的 *** 作。

3字符串对象属性lenght。

stringlenght

表示字符串包含字符的个数

4String对象方法

2)、 chartCodeAt (获取字符串指定下标字符的UniCode编码)

3)、 indexOf (获取指定字符下标首次出现的位置)

字符串indexOf('指定字符') 获取指定字符下标,没有则返回-1

字符串indexOf('指定字符',指定下标) 从指定下标处开始获取指定字符下标,没有则返回-1

可以用来判断html的class属性中是否包含某些类名。

4)、 lastIndexOf 用法与indexOf完全相同,只是lastIndexOf是从后往前查找

5)、字符串的比较:

字符串大小比较实际上是比较两个字符串的ASCII编码值。1-9ASCII编码值逐渐增大,a-z编码值逐渐增大。

比较方法:先比较两个字符串的首位,首位相同则比较下一位,以此类推。

6)、字符串的截取方法substring

字符串substring(起点下标,终点下标),可以截取到起点截取不到终点。起点终点位置颠倒也可以

字符串substring(起点下标);起点及后面都可以截取到

字符串substring(负数),如果传入参数为负数,会直接将负数参数置为0

7)、字符串的截取方法Slice

字符串slice(起点下标,终点下标),可以截取到起点截取不到终点。起点终点位置颠倒不可以

字符串slice(起点下标),起点及后面都可以截取到

如果参数为负,会将参数与原字符串的lenght相加得到结果作为参数,加完后还为负数,则置为零。

8)、字符串大小写转换方法:toUpperCase() toLowerCase()

9)、字符串的切割方法:split

字符串split('切割标识')

以切割标识进行切割,将字符串切割分开,放入数组钟,并将数组返回。

切割标识会被切掉,不会保留到数组中,如果不传切割标识则将整个字符串放入数组作为一个数组项。

例子:例如微信小程序扫码进入页面传的参数为233_affadsgafd,则通过split("_")截取,scene[0]的值为233,scene[1]的值为affadsgafd

10)、替换字符串方法:replace()

字符串replace('要替换的字符部分','用来替换的字符部分')

11)、删除字符串两端空格方法:trim()

字符串trim();

删除字符串两边空格,一般用在注册用户名或密码的时候,防止用户输入空格;

trim只删除字符串两端空格,不删除字符串中间的空格

通过或者[]的方式对对象值进行访问。

示例:

var obj={a:1};//定义一个对象

alert(obja);//访问属性a

alert(obj['a']);//访问属性a

以上就是关于电脑培训分享JavaScript编程开发对象的类型全部的内容,包括:电脑培训分享JavaScript编程开发对象的类型、如何使用JavaScript中的ActiveXObject 对象、map中键为对象,用js将map中的键取出时,如何取出对象,以及它的属性等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9267009.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存