javascript 学习 tong

本文介绍JavaScript面向对象编程的基础知识,包括对象实例化、构造函数、使用JSON定义对象、原型prototype的应用,以及反射机制等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

学习javascript总结了点东西,分享一下
一.javascript是面向对象的编程语言
1.var s=new Object();
这样就实例化了一个对象

2.构造函数是通过function实现
var s=function Teacher(age,name){

this.name=name;
this.age=age;

}
3.

使用JSON方式可以简单地实现对象定义的功能,

JavaScript Object NotationJavaScript语言的一个核心特性,它提供了一种简约的机制
用来创建数组和对象图。通常情况下,定义一个数组的方法如下:

myLibrary.books=new Array();

可以通过数组下标向数组赋值,这与
Java语言操作数组的方式类似:
myLibrary.books[4]=somePredefinedBook;

也可以通过把名字作为键值引用数组中的元素并赋值,其操作上类似于Java语言中的
HashMap

myLibrary.books["BestSeller"]=somePredefinedBook;

myLibrary.books={
bestseller : predefinedBook1,
cookbook : predefinedBook2,
spaceFiller : predefinedBook3
};

var myLibrary={
location : "my house",
keywords : [ "root vegetables", "turnip", "tedium" ],
books: [
{
title : "Turnip Cultivation through the Ages",
authors : [
{ name: "Jim Brown", age: 9 },
{ name: "Dick Turnip", age: 312 }
],
publicationDate : "long ago"
},
{
title : "Turnip Cultivation through the Ages, vol. 2",
authors : [
{ name: "Jim Brown", age: 35 }
],
publicationDate : new Date(1605,11,05)
}
]
};

在代码2.28中,为myLibrary对象定义了3个属性:location是一个简单的string类型对
象,
keywords是一个string对象数组,books是一个复杂对象数组。books中的每个对象都包
括一个
string类型的title属性、一个Date类型的publicationDate属性和一个对象数组authors
uthors
数组每个对象包括nameage两个属性。

4.prototype

通过构造函数的prototype,属性和函数可以关联到对象上。prototypenew关键
字共同工作,当使用
new关键字创建一个对象,所有通过prototype方式声明的属性和方法
将被关联的这个对象上来,

prototypeJavaScript对象的一个属性,在通常的面向对象语言如Java中并没有与之等
价的概念。通过构造函数的
prototype,属性和函数可以关联到对象上。prototypenew关键
字共同工作,当使用
new关键字创建一个对象,所有通过prototype方式声明的属性和方法
将被关联的这个对象上来,如代码
2.32所示。

代码2.32 使用prototype声明对象属性和方法
function MyObject(name,size){
this.name=name;
this.size=size;
}
MyObject.prototype.tellSize=function(){
alert("size of "+this.name+" is "+this.size);
}
var myObj=new MyObject("tiddles","7.5 meters");

MyObject.prototype.color="asdfadsf";

可以通过prototype 随意给对象添加属性


二。反射
可以通过typeof instanceof 来确定是否有这个属性 或是对象是否是某个对象
typeof(Myobject。someProperty!=“undefine”)

if(Myobjdect instanceof Object)
三 。 随意定义函数
var s=function done(){

}
四。 事件的触发
<div id="d" onclick="test()">

var test=function(){

}
d.onclick=test;
五。

网页中IFrame指定的元素可以从其他域加载网页并且执行HTML代码,相当于嵌在网
页内部的一个独立框架窗口,不同域的
JavaScript脚本不能互相调用。而如果IFrame指定的
不同元素在同一个域,那么除了可以正常加载网页外,不同网页的
JavaScript代码也可以互
相执行,具体代码如代码
7.27.3所示。

src="http://localhost:8080/ajax/fra.html"

在同一个域  可以相互调用

src=“/test/”;
在不同域 是不能相互调用的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值