javascript 대상 의 몇 가지 생 성 방식
function createBlog(name, url) {
var o = new Object();
o.name = name;
o.url = url;
o.sayUrl= function() {
alert(this.url);
}
return o;
}
var blog1 = createBlog('wuyuchang', 'http://www.jb51.net/');
alert(blog1);
2. 구조 함수 모드
function Blog(name, url) {
this.name = name;
this.url = url;
this.alertUrl = function() {
alert(this.url);
}
}
var blog = new Blog('wuyuchang', 'http://www.jb51.net/');
alert(blog instanceof Blog);
3. 원형 모드
function CreateJsPerson(name, age) {
this.name = name;
this.age = age;
}
CreateJsPerson.prototype.writeJs = function () {
console.log(this.name + ' write js');
};
var p1 = new CreateJsPerson('iceman' , 25);
var p2 = new CreateJsPerson('mengzhe' , 27);
console.log(p1.writeJs === p2.writeJs);
4. 혼합 구조 함수 와 원형 모드
function Blog(name, url, friend) {
this.name = name;
this.url = url;
this.friend = friend;
}
Blog.prototype.alertInfo = function() {
alert(this.name + this.url + this.friend);
}
var blog = new Blog('wuyuchang', 'http://tools.jb51.net/', ['fr1', 'fr2', 'fr3']),
blog2 = new Blog('wyc', 'http://**.com', ['a', 'b']);
blog.friend.pop();
blog.alertInfo();
blog2.alertInfo();
5. 동적 원형 모드
function Blog(name, url) {
this.name = name;
this.url = url;
if (typeof this.alertInfo != 'function') {
//
alert('exe time');
Blog.prototype.alertInfo = function() {
alert(thia.name + this.url);
}
}
}
var blog = new Blog('wuyuchang', 'http://tools.jb51.net'),
blog2 = new Blog('wyc', 'http:***.com');
6. 기생 구조 함수 모델
function SpecialArray()
{
var value=new Array();
value.push.apply(value,arguments);
value.toPipedString=function()
{
return this.join("|");
}
return value;
}
SpecialArray();
7. 온당 한 구조 함수 모델
function Process (nameF) {
var o = new Object();
var name = nameF;//1
o.sayName = function(){
alert(name);//2
};
return o;
}
var friend = Process('Nick');
friend.sayName(); //"Nick"
console.log(friend.name);//undefined//3
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.