Javascript 从其他对象创建新对象
在javascript中创建对象的第一种方法是让我从中创建新对象。创建对象的第二和第三种方法是抛出错误 有人能告诉我为什么会这样吗。让我知道我在代码中犯了什么错误Javascript 从其他对象创建新对象,javascript,javascript-objects,Javascript,Javascript Objects,在javascript中创建对象的第一种方法是让我从中创建新对象。创建对象的第二和第三种方法是抛出错误 有人能告诉我为什么会这样吗。让我知道我在代码中犯了什么错误 'use strict' // First Way for creating object var log = function(){ this.name = 'nitesh', this.lastName = 'Yadav', this.age = '21' } Object.definePropert
'use strict'
// First Way for creating object
var log = function(){
this.name = 'nitesh',
this.lastName = 'Yadav',
this.age = '21'
}
Object.defineProperty(log,'name',{
enumerable: false,
writable: false,
configurable: false
})
var for = new log(); ***// Works fine***
console.log(foo.name); // nitesh
// Second Way for creating object
var log2 = {
name: 'nitesh',
lastname: 'yadav',
age: '21'
}
var foo2 = new log2; ***//Not working***
console.log(foo2.name) // Result error Why???
// third Way for creating object
var log3 = Object.create(Object.prototype,{
name:{
value: 'nitesh',
enumerable: true,
writable: true,
configurable: true
},
age: {
value: '21',
enumerable: true,
writable: true,
configurable: true
}
})
var foo3 = new log3; ***//Not working***
console.log(foo3.name) // Result error Why???
第一种情况是创建“类”,然后您可以创建任意数量的对象 在第二种和第三种情况下,您正在创建对象本身,并且您无法从对象创建对象。您可以在创建以下内容后立即使用它们:
// Second Way for creating object
var log2 = {
name: 'nitesh',
lastname: 'yadav',
age: '21'
}
// var foo2 = new log2; // This line is not needed
console.log(log2.name) // No Error
// third Way for creating object
var log3 = Object.create(Object.prototype,{
name:{
value: 'nitesh',
enumerable: true,
writable: true,
configurable: true
},
age: {
value: '21',
enumerable: true,
writable: true,
configurable: true
}
})
//var foo3 = new log3; // This line is not needed
console.log(foo3.log3) // No Error
var for=新日志();将引发异常,因为的
是保留字,不能将其用作变量名对象。创建
-创建新对象,而不是类。您不能调用newlog3
,因为它不是类(也不是构造函数),命名都应该重做。从那开始!var foo2=新的log2//不工作,因为log2是一个对象实例,而不是它的构造函数。