var i = 100;
function myFunc() {
var i = 'test';
eval('i = "hello."');
}
myFunc();
alert(i); // 100
var i = 100;
function myFunc() {
var i = 'test';
(function(){
return (i = "hello.");
})();
}
myFunc();
alert(i); // 100
var i = 100;
function myFunc() {
var i = 'test';
window.eval('i="hello."');
}
myFunc();
alert(i);
var i = 100;
function myFunc() {
var i = 'test';
window.eval('i="hello."');
}
myFunc();
alert(i);
var i = 100;
function myFunc() {
var i = 'test';
//window.eval('i="hello."');
eval.call(window,'i="hello"');
}
myFunc();
alert(i);
var i = 100;
function myFunc() {
var i = 'test';
window.execScript('i="hello."');
//eval.call(window,'i="hello"');
}
myFunc();
alert(i); // 打印hello
var i = 100;
function myFunc() {
var i = 'test';
eval('i="hello."');
}
myFunc();
alert(i); // 100
var i = 100;
function myFunc(name) {
console.log('value is:'+i); // 100
eval(name);
console.log('value is:'+i); // 10
}
myFunc('var i = 10;');
function foo(name){
alert("hi:"+name);
}
foo.call(null,'longen'); // 调用打印 hi: longen
foo.apply(null,['tugenhua']); // 调用打印 hi:tugenhua
function foo(){
alert(this.name);
}
function foo(){
alert(this.name);
}
var obj1 = {name:'obj1'};
var obj2 = new Object();
obj2.name = 'obj2';
foo.call(obj1); // obj1
foo.call(obj2); //obj2
function foo(){
alert(this.name);
}
function MyObject(){
this.name = 'myObject';
}
MyObject.prototype.doAction = function(){
foo.call(this);
}
// 测试
var obj3 = new MyObject();
obj3.doAction();
function calc_area(w,h) {
alert(w*h);
}
function Area() {
this.name = 'MyObject';
}
Area.prototype.doCalc = function(v1,v2){
calc_area.call(this,v1,v2);
};
var area = new Area();
area.doCalc(10,20);
function calc_area(w,h) {
alert(w*h);
}
function Area() {
this.name = 'MyObject';
}
Area.prototype.doCalc = function(v1,v2){
//calc_area.call(this,v1,v2);
calc_area.apply(this,[v1,v2])
};
var area = new Area();
area.doCalc(10,20);
var person = {
name: 'longen'
};
alert(person.name); // longen
Object.defineProperty(person, "name", {
writable: false,
value: "tugenhua"
});
alert(person.name); // tugenhua
person.name = "Greg";
alert(person.name); // tugenhua
Object.defineProperty(person, "name", {
writable: false,
value: "tugenhua"
});
alert(person.name); // tugenhua
person.name = "Greg";
alert(person.name); // Greg
var person = {
name: 'longen'
};
alert(person.name); // longen
Object.defineProperty(person, "name", {
configurable: false,
value: "tugenhua"
});
alert(person.name); // tugenhua
delete person.name;
alert(person.name); // tugenhua
var person = {
name: 'longen'
};
alert(person.name); // longen
Object.defineProperty(person, "name", {
value: "tugenhua"
});
alert(person.name); // tugenhua
delete person.name;
alert(person.name); // undefined
var person = {
name: 'longen'
};
Object.defineProperty(person, "name", {
enumerable: true,
value: "tugenhua"
});
alert(person.name); // tugenhua
for(var i in person) {
alert(person[i]); // 可以弹出框
}
var person = {
name: 'longen'
};
Object.defineProperty(person, "name", {
enumerable: false,
value: "tugenhua"
});
alert(person.name); // tugenhua
for(var i in person) {
alert(person[i]); // 不会弹出
}
var book = {
_year: 2004,
edit: 1
};
Object.defineProperty(book,"year",{
get: function(){
return this._year;
},
set: function(newValue) {
if(newValue > 2004) {
this._year = newValue;
this.edit += newValue - 2004;
}
}
});
book.year = 2005;
alert(book.edit); //2
var book = {
_year: 2004,
edit: 1
};
Object.defineProperties(book,{
_year: {
value: 2015
},
edit: {
value: 2
},
year: {
get: function(){
return this._year;
},
set: function(newValue){
if(newValue > this._year) {
this._year = newValue;
this.edit += newValue - this._year;
}
}
}
});
function Dog(name,age) {
this.name = name;
this.age = age;
this.say = function(){
alert(this.name);
}
}
var dog1 = new Dog("wangwang1",'10');
var dog2 = new Dog("wangwang2",'11');
alert(dog1.constructor === Dog); // true alert(dog2.constructor === Dog); // true
alert(dog1 instanceof Object); // true alert(dog2 instanceof Object); // true alert(dog1 instanceof Dog); // true alert(dog2 instanceof Dog); // true
function Dog() {};
Dog.prototype = {
name: 'wangwang',
age:'11',
say: function(){
alert(this.name); //wangwang
}
}
var dog1 = new Dog();
dog1.say();
var dog2 = new Dog();
dog2.say();
alert(dog1.say === dog2.say); // true
function Dog() {};
Dog.prototype = {
name: 'wangwang',
age:'11',
say: function(){
alert(this.name); //wangwang
}
}
var dog1 = new Dog();
var dog2 = new Dog();
console.log(Dog.prototype.isPrototypeOf(dog1));//true
console.log(Dog.prototype.isPrototypeOf(dog1));//true
function Dog() {};
Dog.prototype = {
name: 'wangwang',
age:'11',
say: function(){
alert(this.name); //wangwang
}
}
var dog1 = new Dog();
var dog2 = new Dog();
console.log(Object.getPrototypeOf(dog1) === Dog.prototype); //true
console.log(Object.getPrototypeOf(dog1).name);//wangwang
function Dog() {};
Dog.prototype = {
name: 'wangwang',
age:'11',
say: function(){
alert(this.name); //wangwang
}
}
var dog1 = new Dog();
var dog2 = new Dog();
dog1.name = "aa";
console.log(dog1.name);// aa
console.log(dog2.name);// wangwang
function Dog() {};
Dog.prototype = {
name: 'wangwang',
age:'11',
say: function(){
alert(this.name); //wangwang
}
}
var dog1 = new Dog();
var dog2 = new Dog();
dog1.name = "aa";
console.log(dog1.name);// aa
console.log(dog2.name);// wangwang
delete dog1.name;
console.log(dog1.name);// wangwang
function Dog() {};
Dog.prototype = {
name: 'wangwang',
age:'11',
say: function(){
alert(this.name); //wangwang
}
}
var dog1 = new Dog();
var dog2 = new Dog();
console.log(dog1.hasOwnProperty("name")); // false
dog1.name = "aa";
console.log(dog1.name); // aa
console.log(dog1.hasOwnProperty("name")); // true
console.log(dog2.name); // wangwang
console.log(dog2.hasOwnProperty("name")); // false
delete dog1.name;
console.log(dog1.name); // wangwang
console.log(dog1.hasOwnProperty("name")); //false
function Dog() {};
Dog.prototype = {
name: 'wangwang',
age:'11',
say: function(){
alert(this.name); //wangwang
}
}
var dog1 = new Dog();
console.log("name" in dog1); // true
dog1.name = "aa";
console.log("name" in dog1); //true
function hasPrototypeProperty(object,attr){
return !object.hasOwnProperty(attr) && (attr in object);
}
function Dog() {};
Dog.prototype = {
name: 'wangwang',
age:'11',
say: function(){
alert(this.name); //wangwang
}
}
var dog1 = new Dog();
function hasPrototypeProperty(object,attr){
return !object.hasOwnProperty(attr) && (attr in object);
}
console.log(hasPrototypeProperty(dog1,'name')); //true 在原型中
dog1.name = 'aa';
console.log(hasPrototypeProperty(dog1,'name')); //false 在实例中
var obj = {
toString: function(){
return "aa";
}
};
for(var i in obj){
if(i == "toString") {
alert(1);
}
}
function Dog() {};
Dog.prototype = {
name: 'wangwang',
age:'11',
say: function(){
alert(this.name); //wangwang
}
}
var dog1 = new Dog()
var keys = Object.keys(Dog.prototype);
console.log(keys);//["name",'age','say']
function Dog() {};
Dog.prototype = {
name: 'wangwang',
age:'11',
say: function(){
alert(this.name); //wangwang
}
}
var dog1 = new Dog();
var keys = Object.getOwnPropertyNames(Dog.prototype);
console.log(keys);//["name",'age','say']
function Dog() {};
Dog.prototype = {
name: 'wangwang',
age:'11',
say: function(){
alert(this.name); //wangwang
}
}
var dog1 = new Dog();
console.log(dog1 instanceof Object); // true
console.log(dog1 instanceof Dog); // true
console.log(dog1.constructor == Dog); // false
console.log(dog1.constructor == Object); // true
function Dog() {};
Dog.prototype = {
constructor: Dog,
name: 'wangwang',
age:'11',
say: function(){
alert(this.name); //wangwang
}
}
var dog1 = new Dog();
console.log(dog1 instanceof Object); // true
console.log(dog1 instanceof Dog); // true
console.log(dog1.constructor == Dog); // true
function Dog() {};
var dog1 = new Dog();
Dog.prototype.say = function(){
alert(1);
}
dog1.say(); // 1
function Dog() {};
var dog1 = new Dog();
Dog.prototype = {
constructor: 'Dog',
name:'dog',
age:'1',
say: function(){
alert(this.age);
}
}
dog1.say(); // 报错
var dog1 = new Dog();
function Dog() {};
var dog1 = new Dog();
Dog.prototype = {
constructor: 'Dog',
name:'dog',
age:'1',
say: function(){
alert(this.age);
}
}
//dog1.say(); // 报错
var dog2 = new Dog();
dog2.say(); // 1
function MyObject(){};
var obj1 = new MyObject();
MyObject.prototype.type = 'myObject';
MyObject.prototype.value = "aa";
var obj2 = new MyObject();
MyObject.prototype = {
constructor: 'MyObject',
type: 'Brid',
value:'bb'
};
var obj3 = new MyObject();
// 显示对象的属性
alert(obj1.type); // myObject
alert(obj2.type); // myObject
alert(obj3.type); // Brid
// 显示实例的关系 alert(obj1 instanceof MyObject); // false alert(obj2 instanceof MyObject); // false alert(obj3 instanceof MyObject); // true
function MyObject(){};
var obj1 = new MyObject();
MyObject = function(){};
var obj2 = new MyObject();
console.log(obj1 instanceof MyObject); // false
console.log(obj2 instanceof MyObject); // true
console.log(obj1 instanceof obj1.constructor); // true
function MyObject(){};
var obj1 = new MyObject();
function MyObject(){};
var obj2 = new MyObject();
console.log(obj1 instanceof MyObject); // true
console.log(obj2 instanceof MyObject); // true
console.log(obj1 instanceof obj1.constructor); // true
function Dog(){};
Dog.prototype = {
constructor: Dog,
name: 'aa',
values: ["aa",'bb'],
say: function(){
alert(this.name);
}
}
var dog1 = new Dog();
dog1.values.push("cc");
console.log(dog1.values); // ["aa","bb","cc"]
var dog2 = new Dog();
console.log(dog2.values); // ["aa","bb","cc"]
function Dog(name,age){
this.name = name;
this.age = age;
this.values = ["aa",'bb'];
};
Dog.prototype = {
constructor: Dog,
say: function(){
alert(this.name);
}
}
var dog1 = new Dog("dog1",'12');
dog1.values.push("cc");
console.log(dog1.values); // ["aa","bb","cc"]
var dog2 = new Dog("dog2",'14');
console.log(dog2.values); // ["aa","bb"]
console.log(dog1.values === dog2.values);//false
console.log(dog1.say === dog2.say); //true
function Animal() {
this.name = "aa";
}
Animal.prototype.fly = function(){
return this.name;
};
function Dog() {
this.value = "bb";
}
Dog.prototype = new Animal();
Dog.prototype.fly = function(){
return this.name;
};
var dog1 = new Dog();
console.log(dog1.fly()); // aa
console.log(dog1 instanceof Dog); // true console.log(dog1 instanceof Animal); // true console.log(dog1 instanceof dog1.constructor); // true console.log(dog1.constructor === Dog); // false console.log(dog1.constructor === Animal); // true
console.log(Object.prototype.isPrototypeOf(dog1)); // true console.log(Dog.prototype.isPrototypeOf(dog1)); // true console.log(Animal.prototype.isPrototypeOf(dog1)); // true
function Animal() {
this.name = "aa";
}
Animal.prototype.fly = function(){
return this.name;
};
function Dog() {
this.value = "bb";
}
// 继承Animal
Dog.prototype = new Animal();
// 重写原型的方法
Dog.prototype.fly = function(){
return this.name;
};
// 给自身添加新方法
Dog.prototype.cry = function(){
return false;
};
var dog1 = new Dog();
console.log(dog1.fly()); // aa
console.log(dog1.cry()); // false
function Animal() {
this.name = "aa";
}
Animal.prototype.fly = function(){
return this.name;
};
function Dog() {
this.value = "bb";
}
// 继承Animal
Dog.prototype = new Animal();
// 重写原型的方法
Dog.prototype = {
fly: function(){
return this.name;
},
// 给自身添加新方法
cry: function(){
return false;
}
};
var dog1 = new Dog();
console.log(dog1.fly()); // undefined
console.log(dog1 instanceof Animal); // false
function Animal() {
this.values = ["aa",'bb'];
}
function Dog(){};
Dog.prototype = new Animal();
var dog1 = new Dog();
dog1.values.push("cc"); // 添加cc值
console.log(dog1.values); // [“aa”,”bb”,”cc”];
var dog2 = new Dog();
console.log(dog2.values); // [“aa”,”bb”,”cc”];
function Animal() {
this.values = ["aa",'bb'];
}
function Dog(){
// Dog继承于Animal
Animal.call(this);
};
var dog1 = new Dog();
dog1.values.push("cc"); // 添加cc值
console.log(dog1.values); // ['aa','bb','cc']
var dog2 = new Dog();
console.log(dog2.values); // ['aa','bb']
function Animal(name) {
this.values = ["aa",'bb'];
this.name = name;
}
function Dog(){
// Dog继承于Animal
Animal.call(this,"dog22");
this.age = 22;
};
var dog1 = new Dog();
console.log(dog1.name); // dog22
console.log(dog1.age); // 22
function Animal(name) {
this.values = ["aa",'bb'];
this.name = name;
}
Animal.prototype.sayName = function(){
return this.name;
}
function Dog(name,age){
// Dog继承属性
Animal.call(this,name);
this.age = age;
};
// 继承方法
Dog.prototype = new Animal();
Dog.prototype.constructor = Dog;
Dog.prototype.sayAge = function(){
return this.age;
}
var dog1 = new Dog("dog111",'12');
dog1.values.push("cc");
console.log(dog1.values); // ['aa','bb','cc']
console.log(dog1.sayAge()); // 12
console.log(dog1.sayName()); // dog111
var dog2 = new Dog("dog222",'14');
console.log(dog2.values); // ['aa','bb']
console.log(dog2.sayAge()); // 14
console.log(dog2.sayName());// dog222
function object(obj) {
function F() {};
F.prototype = obj;
return new F();
}
var person = {
name: 'aa',
firends: ['zhangsan','lisi','wangwu']
};
var anthorperson = object(person);
anthorperson.name = "bb";
anthorperson.firends.push("zhaoliu");
var aperson2 = object(person);
aperson2.name = 'cc';
aperson2.firends.push("longen");
console.log(person.firends); // ["zhangsan", "lisi", "wangwu", "zhaoliu", "longen"];
var person = {
name: 'aa',
firends: ['zhangsan','lisi','wangwu']
};
var anthorperson = Object.create(person);
anthorperson.name = "bb";
anthorperson.firends.push("zhaoliu");
var bperson = Object.create(person);
bperson.name = 'longen';
bperson.firends.push("longen");
console.log(person.firends); // ["zhangsan", "lisi", "wangwu", "zhaoliu", "longen"]
var person = {
name: 'aa',
firends: ['zhangsan','lisi','wangwu']
};
var anthorperson = Object.create(person,{
name: {
value: 'bb'
}
});
console.log(anthorperson.name); //bb
function Animal(name) {
this.values = ["aa",'bb'];
this.name = name;
}
Animal.prototype.sayName = function(){
return this.name;
}
function Dog(name,age){
// Dog继承属性
Animal.call(this,name);
this.age = age;
};
// 继承方法
Dog.prototype = new Animal();
Dog.prototype.constructor = Dog;
Dog.prototype.sayAge = function(){
return this.age;
}
function inheritPrototype(Dog,Animal) {
var prototype = object(Animal.prototype);
prototype.constructor = Dog;
Dog.prototype = prototype;
}
function object(obj) {
function F() {};
F.prototype = obj;
return new F();
}
function inheritPrototype(Dog,Animal) {
var prototype = object(Animal.prototype);
prototype.constructor = Dog;
Dog.prototype = prototype;
}
function Animal(name) {
this.values = ["aa",'bb'];
this.name = name;
}
Animal.prototype.sayName = function(){
return this.name;
}
function Dog(name,age){
// Dog继承属性
Animal.call(this,name);
this.age = age;
};
inheritPrototype(Dog,Animal);
var dog1 = new Dog("wangwang",12);
dog1.values.push("cc");
console.log(dog1.sayName()); // wangwang
console.log(dog1.values); // ["aa", "bb", "cc"]
var dog2 = new Dog("ww2",14);
console.log(dog2.sayName()); // ww2
console.log(dog2.values); // ["aa", "bb"]
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有