JavaScript---网络编程(4)-Date、Math、Global和自定义对象-2

简介: JavaScript---网络编程(4)-Date、Math、Global和自定义对象

自定义对象-for-in语句

用js来描述我们自己的对象,如类似java当中的Person类

这个功能很强大的,function中可以定义属性和方法!类似Java中class。

演示代码:

<html>
    <head>
        <title>自定义对象的用法演示</title>
        <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    </head>
    <body>
        <script type="text/javascript" src="out.js">
        </script>
        <!-- 用js来描述我们自己的对象,如类似java当中的Person类 -->
        <script type="text/javascript">
            /*  js是基于对象的,如果要描述对象,那么可以用function。因为js中的
             function功能和java中的类(模板) 本质上是差不多的---里面可以添加变量,也可以添加自定义函数
             */
            function Person(){
                //alert("Person的构造方法...");
            }
            var p = new Person();
            //给对象添加属性,直接采用“p.属性名=”的形式赋值就行---如果没有则是添加,如果有则是修改
            //※※方式1:在对象外面添加属性和方法
            p.name = "Jack";
            p.age = 23;
            //alert(p.name+","+p.age);
            //给对象添加函数
            p.info = function(){//相当于toString()
                return this.name + "," + this.age;
            };
            println("p的信息:" + p.info());
        </script>
        <script type="text/javascript">
            var obj = new Object();
            //※※方式1:在对象外面添加属性和方法   
            //1给对象添加属性  
            obj.name = "god";
            obj.age = 10000;
            //2给对象添加属性
            obj.toString = function(){
                return this.name + "," + this.age;
            }
            println(obj);
        </script>
        <!--
        注意:前面用“对象.prototype.属性或函数名=***”的形式,更改的是原型对象
        而本例用 “对象.属性或函数名=***”的形式,更改的是当前对象(原型对象的克隆体)
        -->
        <script type="text/javascript">
            //js自定义对象的构造器+属性+方法
            function Person(name, age){
                //※※方式2:在函数对象里面添加属性和方法
                this.name = name;
                this.age = age;
                this.toString = function(){
                    return this.name + "," + this.age;
                };
                this.setName = function(name){
                    this.name = name;
                };
                this.getName = function(){
                    return this.name;
                };
            }
            var p2 = new Person("Tom", 22);
            println("p2.name=" + p2.name + ", p2.age=" + p2.age);
            println("p2= " + p2);
            p2.setName("Rose");
            println("p2=" + p2);
            println("p2.getName=" + p2.getName());
        </script>
        <script type="text/javascript">
            println("<hr/>");
             //用for...in语句操作自定义对象
             for( var x in p2){//x是函数中的成员变量与成员方法的名称
                println("x="+x+"-----"+p2[x]);// p2[x]就是valeOf(x)
             }
        </script>
    </body>
</html>

360浏览器8.1 演示结果:

image.png

目录
相关文章
|
1月前
|
前端开发 JavaScript
使用JavaScript实现复杂功能:构建一个自定义的拖拽功能
使用JavaScript实现复杂功能:构建一个自定义的拖拽功能
|
1月前
|
JavaScript 前端开发
Math对象:JavaScript中的数学工具
Math对象:JavaScript中的数学工具
30 1
|
3月前
|
JSON JavaScript 前端开发
基于 JavaScript 的网络请求工具库 axios 的使用介绍
基于 JavaScript 的网络请求工具库 axios 的使用介绍
71 3
|
2天前
|
JavaScript 前端开发 UED
在 JavaScript 中,异步编程和回调函数是处理非阻塞操作(如网络请求、文件读写等)的重要工具
【5月更文挑战第10天】JavaScript中的异步编程和回调函数用于处理非阻塞操作,提高应用响应性和吞吐量。异步编程通过回调函数、Promises和async/await等方式实现,避免程序因等待操作完成而阻塞。回调函数是异步操作完成后调用的函数,常用于处理网络请求等。然而,回调函数存在嵌套问题和错误处理困难,因此出现了Promises和async/await等更优解决方案。
10 3
|
11天前
|
XML 前端开发 JavaScript
【JavaScript技术专栏】JavaScript网络请求与Ajax技术
【4月更文挑战第30天】Ajax是Web开发中实现动态数据更新的关键技术,允许不刷新页面即从服务器获取数据。它结合了HTML/CSS、DOM、XML/JSON和JavaScript。`XMLHttpRequest`是传统的Ajax实现方式,而`fetch` API是现代、简洁的替代选项。Ajax应用实例展示了如何使用fetch在搜索框输入时异步获取并显示结果,提升了用户体验。掌握这些技术对前端开发者至关重要。
|
13天前
|
网络协议 JavaScript 前端开发
Node.js的网络编程:深入TCP/UDP网络编程
【4月更文挑战第29天】本文介绍了如何在Node.js中进行TCP和UDP网络编程。使用net模块,可以创建TCP服务器和客户端,实现可靠的数据传输。例如,通过`net.createServer()`创建服务器,监听数据、关闭和错误事件。客户端使用`net.createConnection()`连接服务器并通信。另一方面,dgram模块用于UDP编程,创建UDP套接字并绑定端口,通过`server.send()`发送和接收数据报。TCP提供连接和数据可靠性,适合需要顺序和完整性的场景,而UDP更轻量级,适用于实时性要求高的应用。Node.js的网络编程能力使其成为开发高效网络应用的理想选择。
|
25天前
|
JavaScript
【Js】检查Date对象是否为Invalid Date
【Js】检查Date对象是否为Invalid Date
33 0
|
3月前
|
JavaScript Unix 索引
2022年11月21日13:32:00——T5——JS对象与Date日期函数
2022年11月21日13:32:00——T5——JS对象与Date日期函数
32 0
|
3月前
|
JavaScript 前端开发 网络协议
轻松搭建远程Node.js服务端,让你的应用在公共网络中畅行无阻!
Node.js 是能够在服务器端运行 JavaScript 的开放源代码、跨平台运行环境。Node.js 由 OpenJS Foundation(原为 Node.js Foundation,已与 JS Foundation 合并)持有和维护,亦为 Linux 基金会的项目。Node.js 采用 Google 开发的 V8 运行代码,使用事件驱动、非阻塞和异步输入输出模型等技术来提高性能,可优化应用程序的传输量和规模。这些技术通常用于资料密集的即时应用程序。
|
4月前
|
存储 JavaScript 前端开发
JavaScript 自定义对象 及 new()原理与实现 如何完整地手写实现new
JavaScript 自定义对象 及 new()原理与实现 如何完整地手写实现new
69 0