JavaScript---网络编程(3)-Object、String、Array对象和prototype属性-1

简介: JavaScript---网络编程(3)-Object、String、Array对象和prototype属性

本节学习JavaScript的对象和方法(函数)~


Object 对象


提供所有 JScript 对象通用的功能。


obj = new Object([value])


参数

obj

必选项。要赋值为 Object 对象的变量名。

value

可选项。任意一种 JScript 基本数据类型。(Number、Boolean、或 String。)如果 value 为一个对象,返回不作改动的该对象。如果 value 为 null、undefined,或者没有给出,则产生没有内容的对象。

说明

Object 对象被包含在所有其它 JScript 对象中;在所有其它对象中它的方法和属性都是可用的。在用户定义的对象中可以重定义这些方法,并在适当的时候通过 JScript 调用。toString 方法是经常被重定义的 Object 方法的例子。


代码演示:

<html>
  <head>
    <title>Object对象的用法演示</title>
  </head>
  <body>
   <script type="text/javascript">
        /*toString():将对象转换成字符串*/
        function show(){
            document.write("show...");
        }
        document.write(show);//默认调用的是toString()
        document.write("<br/>");
        document.write(show.toString());
        document.write("<br/>");
        document.write(show.toLocaleString());
        document.write("<br/>");
        var arr=[1,5,6,20];
        document.write(arr+"<br/>");//默认调用的是toString()
        document.write(arr.toString()+"<br/>");
        /*valueOf(): 返回指定对象的原始值  */
        document.write(arr.valueOf()+"<br/>");//结果和toString()一样
        document.write(show.valueOf());//结果和toString()一样
   </script>
  </body>
</html>


演示结果:

image.png

toLocaleString 方法说明:

就是根据你电脑的设置时区,来匹配输出时间的格式,一般在字符串用的少。

说明

toLocaleString 方法返回一个 String 对象,这个对象中包含了用当前区域设置的默认格式表示的日期。

对于公元 1601 和 1999 之间的时间,日期格式要按照用户的“控制面板”中“区域设置”来确定。

F对于此区间外的其他时间,使用 toString 方法的默认格式。

例如,同样是 1 月 5 日,在美国,toLocaleString 可能会返回 “01/05/96 00:00:00”,而在欧洲,返回值则可能是 “05/01/96 00:00:00”,因为欧洲的惯例是将日期放在月份前面。


注意 toLocaleString 只用来显示结果给用户;不要在脚本中用来做基本计算,因为返回的结果是随机器不同而不同的。


String 对象:


可用于处理或格式化文本字符串以及确定和定位字符串中的子字符串。


语法

newString = new String([“stringLiteral”])


参数

newString

必选项。要赋值为 String 对象的变量名。


stringLiteral

可选项。任意 Unicode 字符群。


说明

String 对象可用字符串文字显式创建。用这种方法创建的 String 对象(指以标准字符串形式)与用 new 运算符创建的 String 对象处理上不同。所有字符串文字共享公用的全局字符串对象。如果为字符串文字添加属性,则它对所有标准字符串对象都是可用的:


var alpha, beta;

alpha = “这是一个字符串”;

beta = “这也是一个字符串”;


alpha.test = 10;

在前一示例中,这时为 beta 和所有将来的字符串定义 test。然而,在下面的例子中,被添加属性的处理略有不同:


var gamma, delta;

gamma = new String(“这是一个字符串”);

delta = new String(“这是也一个字符串”);


gamma.test = 10;

在这种情况下,不为 delta 定义 test。每个用 new String 声明的 String 对象有其自己的一组成员。这是对 String 对象和字符串文字的处理不同的唯一情况。


replace 方法


返回根据正则表达式进行文字替换后的字符串的复制。

stringObj.replace(rgExp, replaceText)


参数

stringObj

必选项。要执行该替换的 String 对象或字符串文字。该字符串不会被 replace 方法修改。


rgExp

必选项。为包含正则表达式模式或可用标志的正则表达式对象。也可以是 String 对象或文字。如果 rgExp 不是正则表达式对象,它将被转换为字符串,并进行精确的查找;不要尝试将字符串转化为正则表达式。


replaceText

必选项。是一个String 对象或字符串文字,对于stringObj 中每个匹配 rgExp 中的位置都用该对象所包含的文字加以替换。在 Jscript 5.5 或更新版本中,replaceText 参数也可以是返回替换文本的函数。


slice 方法 (String)


返回字符串的片段。

stringObj.slice(start, [end])


参数

stringObj

必选项。是一个 String 对象或文字。


start

必选项。下标以 0 开始的 stringObj 指定部分起始索引。


end

可选项。下标以 0 起始的 stringObj 的指定部分结束索引。


说明

slice 方法返回一个包含 stringObj 的指定部分的 String 对象。


slice 方法一直复制到 end 所指定的元素,但是不包括该元素。如果 start 为负,将它作为 length + start处理,此处 length 为数组的长度。如果 end 为负,就将它作为 length + end 处理,此处 length 为数组的长度。如果省略 end ,那么 slice 方法将一直复制到 arrayObj 的结尾。如果 end 出现在 start 之前,不复制任何元素到新数组中。


示例

在下面的示例中,slice 方法的两种用法将返回相同的结果。第二个示例中的 -1 指向 str1 中的最后一个字符,并作为提取操作的结束位置。

str1.slice(0)

str2.slice(0,-1)


代码演示:

<html>
<head>
<title>String对象的用法演示</title>
</head>
<body>
    <script type="text/javascript" src="out.js">
        //注意导入顺序,必须先导入,后面才能用
    </script>
    <script type="text/javascript">
        var str = new String("abc123");
        println(str);
        var str2 = "qwe234";
        println(str2);
    </script>
    <!-- 加个小知识点<pre>-按原格式输出到网页(空格回车不忽略) -->
    <pre>
    asdsad
            asfd
            sdf  dsfd
            dsfd   dsf
        </pre>
    <script type="text/javascript">
        //length属性:返回 String 对象的长度
        println(str.length);
        println(str.bold());//bold 方法 把 HTML <B> 标记放置在 String 对象中的文本两端。
        println(str2.bold());
        println(str.charAt(3));
        println(str.concat(str2));//连接str+str2---返回新的字符串
        println(str.fontcolor("red"));//fontcolor 方法
        //把带有 COLOR 属性的一个 HTML <FONT> 标记放置在 String 对象中的文本两端。
        println(str.link("http://www.hncu.net"));//link 方法
        //把一个有 HREF 属性的 HTML 锚点放置在 String 对象中的文本两端。 
        println(str.replace("1", "666"));//将1这个字符替换成666
        println(str.search("bc"));// 1
        //search 方法
        //返回与正则表达式查找内容匹配的第一个子字符串的位置。
        println( str.slice(1, 4));
        println( str.substring(1, 4));//返回位于 String 对象中指定位置的子字符串。 
        //substring 方法使用 start 和 end 两者中的较小值作为子字符串的起始点。
        //例如, strvar.substring(0, 3) 和 strvar.substring(3, 0) 将返回相同的子字符串。 
        //如果 start 或 end 为 NaN 或者负数,那么将其替换为0。 
        println( str.strike() );//字符串加删除线
        //将 HTML 的<STRIKE> 标识放置到 String 对象中的文本两端。
        println( str.substring(0, 4)+str.substring(4, 5).sub() );
        //sub()  -- 下标-将 HTML 的 <SUB> 标识放置到 String 对象中的文本两端。
        println( str.substr(1,3) ); //从位置1开始,截取3个字符
        str = "aBcewWfd677";
        println( str.toUpperCase() );//返回一个字符串,该字符串中的所有字母都被转化为大写字母。
    </script>
</body>
</html>


out.js–代码:

function println(param){
    document.write(param+"<br/>");
}
function print(param){
    document.write(param);
}


360浏览器8.1 演示结果:

image.png

目录
相关文章
|
12天前
|
前端开发 JavaScript 开发者
JavaScript:构建动态网络的引擎
JavaScript:构建动态网络的引擎
|
12天前
|
存储 消息中间件 人工智能
【05】AI辅助编程完整的安卓二次商业实战-消息页面媒体对象(Media Object)布局实战调整-按钮样式调整实践-优雅草伊凡
【05】AI辅助编程完整的安卓二次商业实战-消息页面媒体对象(Media Object)布局实战调整-按钮样式调整实践-优雅草伊凡
45 11
【05】AI辅助编程完整的安卓二次商业实战-消息页面媒体对象(Media Object)布局实战调整-按钮样式调整实践-优雅草伊凡
|
2月前
|
JavaScript 前端开发 开发者
讲述Vue框架中用于对象响应式变化的Object.defineProperty函数。
综上所述,Vue.js通过 `Object.defineProperty()`提供了强大的响应式能力,使得状态管理变得简洁高效。这种能力是Vue.js受到广大开发者青睐的重要原因之一。尽管Vue 3.x使用Proxy替代了该方法,但对于Vue 2.x及其之前版本,`Object.defineProperty()`是理解Vue.js内部工作机制不可或缺的一部分。
129 27
|
10月前
|
JavaScript 前端开发
如何在 JavaScript 中使用 __proto__ 实现对象的继承?
使用`__proto__`实现对象继承时需要注意原型链的完整性和属性方法的正确继承,避免出现意外的行为和错误。同时,在现代JavaScript中,也可以使用`class`和`extends`关键字来实现更简洁和直观的继承语法,但理解基于`__proto__`的继承方式对于深入理解JavaScript的面向对象编程和原型链机制仍然具有重要意义。
|
4月前
|
监控 算法 JavaScript
基于 JavaScript 图算法的局域网网络访问控制模型构建及局域网禁止上网软件的技术实现路径研究
本文探讨局域网网络访问控制软件的技术框架,将其核心功能映射为图论模型,通过节点与边表示终端设备及访问关系。以JavaScript实现DFS算法,模拟访问权限判断,优化动态策略更新与多层级访问控制。结合流量监控数据,提升网络安全响应能力,为企业自主研发提供理论支持,推动智能化演进,助力数字化管理。
114 4
|
5月前
|
编解码 JavaScript 前端开发
【Java进阶】详解JavaScript的BOM(浏览器对象模型)
总的来说,BOM提供了一种方式来与浏览器进行交互。通过BOM,你可以操作窗口、获取URL、操作历史、访问HTML文档、获取浏览器信息和屏幕信息等。虽然BOM并没有正式的标准,但大多数现代浏览器都实现了相似的功能,因此,你可以放心地在你的JavaScript代码中使用BOM。
161 23
|
6月前
|
监控 算法 JavaScript
企业用网络监控软件中的 Node.js 深度优先搜索算法剖析
在数字化办公盛行的当下,企业对网络监控的需求呈显著增长态势。企业级网络监控软件作为维护网络安全、提高办公效率的关键工具,其重要性不言而喻。此类软件需要高效处理复杂的网络拓扑结构与海量网络数据,而算法与数据结构则构成了其核心支撑。本文将深入剖析深度优先搜索(DFS)算法在企业级网络监控软件中的应用,并通过 Node.js 代码示例进行详细阐释。
115 2
|
6月前
|
JavaScript 算法 前端开发
JS数组操作方法全景图,全网最全构建完整知识网络!js数组操作方法全集(实现筛选转换、随机排序洗牌算法、复杂数据处理统计等情景详解,附大量源码和易错点解析)
这些方法提供了对数组的全面操作,包括搜索、遍历、转换和聚合等。通过分为原地操作方法、非原地操作方法和其他方法便于您理解和记忆,并熟悉他们各自的使用方法与使用范围。详细的案例与进阶使用,方便您理解数组操作的底层原理。链式调用的几个案例,让您玩转数组操作。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
8月前
|
安全 Java
Object取值转java对象
通过本文的介绍,我们了解了几种将 `Object`类型转换为Java对象的方法,包括强制类型转换、使用 `instanceof`检查类型和泛型方法等。此外,还探讨了在集合、反射和序列化等常见场景中的应用。掌握这些方法和技巧,有助于编写更健壮和类型安全的Java代码。
463 17
|
6月前
|
前端开发 数据处理
对象数据的读取,看这一篇就够了!Object.keys()、Object.values()和Object.entries()用法详解;如何获取对象原型链上的属性
Object.keys()、Object.values()和Object.entries()都是利于对象操作的便捷方法,能有效提升数据处理的效率。 博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~

热门文章

最新文章