`

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

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

相关推荐

    chromedriver-linux64-117.0.5930.0.zip

    此外,Chromedriver还可以与多种编程语言配合使用,例如JavaScript(通过Node.js)、Python、Java等,这使得开发者可以利用自己熟悉的语言编写自动化测试脚本。这对于敏捷开发环境中的持续集成和持续交付流程非常有...

    chromedriver-linux64_115.0.5789.0.zip

    此外,ChromeDriver还支持多种浏览器特性,比如隐身模式(Incognito mode)、无痕浏览(InPrivate mode)以及浏览器扩展(extensions)。这些功能的集成确保了测试人员可以尽可能地模拟现实世界中的用户行为。 ...

    chromedriver-linux64_127.0.6511.0.zip

    chromedriver是基于WebDriver协议开发的,WebDriver是一个W3C标准,它定义了一套可以通过编程语言远程控制Web浏览器的接口。chromedriver实现了这一协议,使得开发者能够通过发送命令来模拟用户的交互行为,如点击、...

    chromedriver-linux64_128.0.6613.119.zip

    使用ChromeDriver时,可以通过各种编程语言来编写测试脚本,如Java、Python、JavaScript等。 在安装和配置ChromeDriver时,还需要注意一些安全问题。例如,确保下载的ChromeDriver版本与浏览器版本相匹配,并且要...

    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的...

    chromedriver-linux64_127.0.6508.0.zip

    Selenium框架支持多种编程语言,如Java、Python、C#等,因此开发者可以根据自己的技术栈选择合适的语言编写自动化测试脚本。 在自动化测试中,chromedriver不仅能够提高测试效率,还能提供详细的错误日志,帮助...

    chromedriver-linux64_128.0.6611.0.zip

    它允许开发者使用各种编程语言来控制谷歌浏览器,实现自动化测试。由于涉及文件名称为“chromedriver-linux64”,我们可以推断出这是一个针对64位Linux系统的ChromeDriver版本文件。 接下来,从描述部分...

    chromedriver-linux64_118.0.5962.0.zip

    该文件可能被用于多种编程语言中,如Python、Java、C#等,这些语言都提供了Selenium库来支持与ChromeDriver的交互。开发人员可以使用Selenium WebDriver接口,编写自动化测试脚本,从而提高测试的效率和覆盖率。 在...

    chromedriver-linux64_118.0.5971.0.zip

    chromedriver是一个由谷歌官方提供的服务器端实现的WebDriver接口,它允许开发者使用高级编程语言,如Java、Python、JavaScript等编写自动化测试脚本,从而控制谷歌浏览器的行为。它可以单独用于自动化浏览器任务,...

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

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

    chromedriver-linux64_128.0.6552.0.zip

    Chromedriver 使得开发者能够使用多种编程语言编写自动化脚本,以便控制 Chrome 浏览器的许多方面,包括但不限于导航、用户输入、执行 JavaScript 代码以及获取渲染页面的信息。 在使用 Chromedriver 时,首先需要...

    javascript-video-oo-js

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

    chromedriver-linux64_128.0.6559.0.zip

    WebDriver协议允许开发者创建浏览器实例、导航至不同页面、执行搜索、添加用户数据、发送表单数据、截图,以及运行JavaScript。它与浏览器绑定,由浏览器供应商实现,用于提供更加精细和直接的控制,而不依赖于...

    chromedriver-linux64_127.0.6498.3.zip

    此外,随着Web开发框架和工具的多样化,为了更好地满足开发者的测试需求,chromedriver也支持各种编程语言,如Python、Java、JavaScript等,提供了相应的语言绑定。开发者可以根据自己熟悉的编程语言来编写自动化...

    chromedriver-linux64_118.0.5974.0.zip

    WebDriver协议是一种允许网页开发者编写代码来模拟用户在浏览器中操作的编程接口。由于它是一个独立的工具,可以脱离Selenium框架运行,但通常和Selenium一起使用来实现浏览器自动化测试。chromedriver通过创建一个...

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

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

    chromedriver-linux64_117.0.5849.2.zip

    例如,可以结合使用JavaScript、Python等脚本语言,通过chromedriver控制浏览器自动提交表单、自动化登录、抓取网页数据等。chromedriver的灵活性和可编程性,使其成为Web自动化领域中不可或缺的工具之一。 ...

    chromedriver-linux64_118.0.5960.0.zip

    它也更加稳定可靠,因为它是基于浏览器原生的JavaScript执行环境,因此能够更好地模拟真实用户的操作。 ChromeDriver通常在自动化测试框架中使用,比如Selenium。Selenium是一个非常流行的自动化测试工具集,广泛...

    chromedriver-linux64_128.0.6602.2.zip

    ChromeDriver支持多种编程语言,如Java、Python、C#和JavaScript等,能够与Selenium Web驱动程序配合使用,实现复杂和全面的自动化测试。 在版本命名方面,"chromedriver-linux64_128.0.6602.2"表示的是...

Global site tag (gtag.js) - Google Analytics