`

JavaScript的OO编程--1.js的特性

阅读更多
JavaScript的OO编程--1.js的特性
至于javascript历史,dom模型...什么的这里就不介绍了,有兴趣的朋友可以上网搜一搜,这里主要通过示例来讲解javascript的OO方式的使用。
这里给出的是最简单也是比较实用的例子
function add(aa)
  {
	//判断传入参数的个数
	if(1 == arguments.length)
	{
		alert(arguments[0] + 1);
	}
	else if(2 == arguments.length)
	{
		alert(arguments[0] + arguments[1] + 1);
	}
  }
  add(1); //2
  add(1,2); //仍然可以 4
  //返回定义时的参数个数
  alert(add.length); //1

对于方法的参数传递可以通过参数直接取得,也可在方法内部可以通过arguments[i](i是从0开始的)取得。
js中函数都隐含一个对象叫arguments,该arguments是一个数组,通过arguments可以获得到实际传递参数的个数及实际传递参数的值
每个函数的名字都有一个属性叫length,“属性名.length ”获得该函数能接受参数的个数。

var obj = "hello";
alert(typeof obj);

显示对象s的类型

 function test()
	{
		//alert("aa");
		alert("bb");
		return;
	}
        alert(test());//undefined  
	alert(test);

显示出test方法的代码,对于函数来说,如果其不返回值,那么其返回值就为undefined

alert(undefined == null);

返回为true,null与undefined的关系,undefined实际上从null派生而来

function test()
	{
		obj = "hello";
		var obj2 = "hello";
	}

test();

alert(obj);
alert(obj2);

如果在方法体内不用var定义变量,则变量的作用域是全局的,不会被释放,强烈建议要用var在方法体内定义。

var str = String("aaa");
alert(typeof str);//string

var obj = new String("aaa");
alert(typeof obj);//object

var obj = new Number(100);
alert(typeof obj);//object

采用new方法声明将产生类型是object

var o = new Object();
alert(o.propertyIsEnumerable("prototype"));//false

propertyIsEnumerable("prototype")用来判断该属性是否可以枚举,有此可知prototype是不能枚举的
prototype是对该对象的原型引用,非常重要后面会详细讲解

for(var temp in window)
{
	alert(temp);
}

迭代出window对象的全部属性和方法,当然prototype等是不能被迭代的。

//定义对象
var obj = new Object();
//定义属性并赋值
obj.name = "llying";
alert(obj.name);
//删除属性
delete o.name;
//因为删除了,所以显示没有定义
alert(obj.name);

上面就是我们自己定义的第一个对象
分享到:
评论

相关推荐

    prototypal-oo-js-object-oriented-constructor-functions-lab-onlin

    标题中的“prototypal-oo-js-object-oriented-constructor-functions-lab-onlin”表明这是一个关于JavaScript中原型式面向对象编程(Prototype-based Object-Oriented Programming)的实验或练习,特别是涉及构造...

    【JavaScript源代码】vue3.0+vue-router+element-plus初实践.docx

    Vue3.0是Vue.js框架的重大升级,带来了许多性能优化和功能增强,使得开发者能够更加高效地构建大型应用。在本文档中,我们将探讨Vue3.0的主要改进、如何使用Vue CLI初始化项目,以及结合vue-router和element-plus的...

    Oriented.JavaScript.Create.scalable.reusable.high-quality.JavaScript

    因此,面向对象的JavaScript(Object-Oriented JavaScript,简称OOJS)作为一种更高级的编程范式,为开发者提供了更加灵活、高效且易于维护的解决方案。 #### 面向对象的概念与优势 面向对象编程(Object-Oriented...

    javascript-video-oo-js

    标题 "javascript-video-oo-js" 暗示我们即将探讨的是JavaScript中的面向对象编程(Object-Oriented Programming, OOP)在视频处理或播放上下文中的应用。这可能包括创建可复用的视频播放器组件、事件处理以及利用...

    【JavaScript源代码】教你使用vscode 搭建react-native开发环境.docx

    Visual Studio Code是一款轻量级但功能强大的源代码编辑器,支持多种编程语言的智能补全、语法高亮、代码片段、代码对比Diff、Git等功能,并且可以通过安装插件来扩展其功能。 - **安装**:首先需要下载并安装...

    JavaScript DOM编程艺术 源代码.rar code

    JavaScript DOM编程艺术是一本经典的学习JavaScript操作文档对象模型(DOM)的书籍,源代码rar文件包含了许多实践示例,对于JavaScript初学者来说是极其宝贵的资源。DOM是Web页面的结构化表示,允许我们通过编程方式...

    【JavaScript源代码】Vue.js框架实现购物车功能.docx

    在本文中,我们将深入探讨如何使用Vue.js框架来实现一个购物车功能。Vue.js是一个轻量级的前端JavaScript框架,以其响应式数据绑定...Vue.js的这种声明式编程方式使代码更易于理解和维护,是现代前端开发中的有力工具。

    【JavaScript源代码】使用auto.js实现自动化每日打卡功能.docx

    JavaScript源代码实现自动化每日打卡功能主要涉及到自动化脚本的编写,使用的是Auto.js这款工具,它基于JavaScript语言,能够实现对安卓设备的自动化操作。在本文档中,作者提到由于疫情原因需要每日打卡,为了方便...

    【ASP.NET编程知识】Asp.net基于ajax和jquery-ui实现进度条.docx

    在JavaScript代码中,我们定义了两个函数:GetProgress和DoWork。GetProgress函数用于查询任务的进度信息,并将其显示在进度条中。DoWork函数用于触发任务的执行,并禁用按钮以防止重复提交。 二、后台实现 在后台...

    【JavaScript源代码】JS中for,for...in,for...of和forEach的区别和用法实例.docx

    在JavaScript编程中,循环是一种非常重要的控制流程结构,它能够帮助开发者重复执行一段代码,直到满足特定的终止条件。本文主要介绍四种常用的循环结构:`for`循环、`for...in`循环、`for...of`循环以及`Array....

    【JavaScript源代码】可拖拽组件slider.js使用方法详解.docx

    `slider.js`组件利用mithril.js的响应式特性,结合JavaScript和SCSS的灵活性,实现了一个自定义的可拖动滑块。通过初始化、值域处理、事件监听和数据反馈机制,这个组件能够很好地适应各种应用场景,为开发者提供了...

    JavaScript面向对象编程指南(第2版)

    1.本书是唯一一本介绍JavaScript面向对象编程的图书。, 2.本书作者是知名的Web开发人员和作者。受到国内众多前端开发人员,如淘宝UED团队的推崇和推荐。 Stoyan Stefanov:Facebook公司工程师、作家、演说家。他经常...

    channel.js-master.zip

    在JavaScript的世界里,异步编程是不可或缺的一部分。传统的回调函数、Promise以及async/await等方法虽然能够处理复杂的异步逻辑,但面对多线程通信时,它们显得力不从心。为了解决这一问题,"channel.js-master.zip...

    【JavaScript源代码】Node.js里面的内置模块和自定义模块的实现.docx

    CommonJS是一种在客户端JavaScript中实现模块化编程的标准,它允许开发者将代码组织成独立的模块,便于重用和管理。Node.js是CommonJS规范的一个重要实现,使得JavaScript能够应用于服务器端开发。 在Node.js中,...

    Javascript-OOJS:Javascript 中的面向对象编程

    JavaScript是一种广泛应用于Web开发的动态编程语言,以其灵活性和强大的功能而著称。在JavaScript中,面向对象编程(Object-Oriented Programming,简称OOP)是实现复杂逻辑和组织代码结构的重要方式。OOP允许我们...

    offline-pixel.github.io

    15. **OOJS**:面向对象的JavaScript编程。 16. **Scaffolding**:快速搭建项目结构的工具,例如在Angular中创建组件、服务等。 17. **Angular9**:Angular框架的第9个主要版本,用于构建单页应用程序。 18. **...

    javascript观察者模式有什么方法_javascript观察者模式有哪些方法.docx

    接下来,我们简要讨论一下JavaScript作为一种编程语言的基本特性,以更好地理解其与观察者模式的关系。 1. **基于对象和面向对象** - JavaScript是一种基于对象的脚本语言,支持面向对象编程特性,如封装、继承和...

    Seat-reservation---OOJS-Local-storage:OOJS和本地存储中的座位预定

    OOJS是基于JavaScript的面向对象编程方式,它允许我们通过类和对象来组织代码,提高代码的可读性和复用性。在JavaScript中,我们可以通过构造函数、原型和闭包来实现面向对象特性。 1. **构造函数**:构造函数是一...

    Java/JavaEE 学习笔记

    第五章 对象和类(OO思想).........53 第六章 高级语言特性........................59 第七章 异常.............74 第八章 图形用户接口:GUI.............78 第十一章 事件处理模型....................79 第十三...

    The-style-file-naming-conventions.zip_WEB开发_HTML_

    7. **驼峰命名法(CamelCase)**:在JavaScript中常见,但在CSS中并不推荐,因为它可能会与JavaScript变量混淆。 8. **避免使用ID选择器**:ID选择器(#example)具有高优先级,应谨慎使用,避免对其他样式造成不必...

Global site tag (gtag.js) - Google Analytics