`

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);

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

相关推荐

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

    JavaScript DOM编程艺术 源代码.rar code javascirpt初学者 javascript code

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

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

    【JavaScript源代码】CentOS 8.2服务器上安装最新版Node.js的方法.docx

    CentOS 8.2服务器上安装最新版Node.js的方法  Node.js是一个开源JavaScript运行时环境。在这里,您将学习如何在CentOS 8服务器上安装...因此,Node.js代表了一个“ JavaScript无处不在”范例,统一了单一编程语言(而

    Java/JavaEE 学习笔记

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

    J2EE学习笔记(J2ee初学者必备手册)

    .......................1 Java/JavaEE.....1 2008年11月1日...............1 Unix 学习笔记7 一、Unix前言............7 二、Unix基础知识....7 三、Unix常用命令....8 四、 文件系统权限.21 五、软硬连接的区别......

    dice-oo.js-bk-002-public

    初学者,数字,OO 2个 骰子 在本实验中,您需要创建一个JavaScript构造函数。 该代码的框架已经放置在lib/dice.js 。 您需要做的就是添加代码以使其正常工作 JS构造函数 JavaScript构造函数类似于Ruby中的类。 ...

    【JavaScript源代码】Vue.js之render函数使用详解.docx

    然而在一些场景中,你真的需要 JavaScript的完全编程的能力,这就是 render 函数,它比 template 更接近编译器。 在 HTML 层, 我们决定这样定义组件接口:通过传入不同的level 1-6 生成h1-h6标签,和使用slot生成...

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

    Javascript 使用 Javascript 测试代码将添加面向对象的 Javascript

    InversifyJS:一个强大的和轻量级控制反转容器,支持JavaScript和Node.js-javascript

    动机 JavaScript 现在支持具有基于类的继承的面向对象 (OO) 编程。 这些功能很棒,但事实是它们也很危险。 我们需要一个好的 OO 设计(SOLID、Composite Reuse 等)来保护我们自己免受这些威胁。 问题是 OO 设计...

    js框架 dojo.js

    Dojo是一个非常强大的面向对象的JavaScript的工具箱, 建议大家能够去补充一下JavaScript下如何使用OO进行编程的, 这对于以后阅读Dojo Source有很大的用处

    【JavaScript源代码】Javascript中异步等待的深入理解.docx

     在本文中,我们将探讨async/await对于每个Javascript开发人员来说,异步编程的首选工具。如果您不熟悉javascript,请不要担心,本文将帮助您async/await从头开始理解。 async/await 是javascript中的一种模式,可...

    JavaScript面向对象编程

    JavaScript面向对象编程,用面向对象的思想来编写JS

    【JavaScript源代码】JavaScript编程通过Matlab质心算法定位学习.docx

    JavaScript编程通过Matlab质心算法定位学习  目录 Matlab质心算法 Matlab质心算法 Matlab作为封闭的商业软件,受美国政府左右,无视商业道德,故不建议使用。如果喜欢Matlab语法,可移步开源的octave,其语法与...

    OOP-Practice:增强面向对象的技能

    面向对象编程学习 ##环境准备 WebStorm Git ##操作 先将代码clone到本地: git clone https://github.com/geekmooc/oo-basic-js.git 导入到WebStorm中 修改远程仓库地址 git remote rm origin git remote add origin ...

    JavaScript_oo:javascript面向对象

    JavaScript-oo类类(Class)定义了一件事物的抽象特点。通常来说,类定义了事物的属性和它可以做到的(它的行为)。举例来说,“狗”这个类会包含狗的一切基础特征,即所有“狗”都共有的特征或行为,例如它的孕育、...

    【JavaScript源代码】nodejs中的异步编程知识点详解.docx

    nodejs中的异步编程知识点详解  因为javascript默认情况下是单线程的,这意味着代码不能创建新的线程来并行执行。但是对于最开始在浏览器中运行的javascript来说,单线程的同步执行环境显然无法满足页面点击,鼠标...

    js-oo-introduction-web-0715-public

    JavaScript OO简介 客观的 了解面向对象的编程如何在JavaScript中工作。 概述 在过去48小时里坐在电脑前写了一些很棒的代码后,您意识到自己也应该做一些运动。 也许骑自行车? 但是,在穿上一些氨纶短裤然后骑...

Global site tag (gtag.js) - Google Analytics