Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/454.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript中的属性/字段属性_Javascript_Javascript Objects - Fatal编程技术网

JavaScript中的属性/字段属性

JavaScript中的属性/字段属性,javascript,javascript-objects,Javascript,Javascript Objects,我们在C中使用属性,如: [必需] 字符串电子邮件 我们如何在JavaScript中实现这一点 我使用了以下内容,但这不会返回 var c=function(){ 对象。定义属性(此{ a:{ 可写:对, 可枚举:正确, 对,, 必填项:true } }); } var c1=新的c(); var d=Object.getOwnPropertyDescriptor(c1,'a'); log(JSON.stringify(d)) for(变量k在d中) console.log(k+'='+d[k

我们在C中使用
属性
,如:

[必需]
字符串电子邮件

我们如何在JavaScript中实现这一点

我使用了以下内容,但这不会返回

var c=function(){
对象。定义属性(此{
a:{
可写:对,
可枚举:正确,
对,,
必填项:true
}
});
}
var c1=新的c();
var d=Object.getOwnPropertyDescriptor(c1,'a');
log(JSON.stringify(d))
for(变量k在d中)
console.log(k+'='+d[k])根据文档()可以解释这种行为。打开链接并阅读
说明

可以定义多个参数,
必需
不是其中之一。这就是它不会应用于对象的原因。如果你想做到这一点,你必须这样想:

var c=function(){
对象。定义属性(此{
a:{
可写:对,
可枚举:正确,
可配置:true
}
});
}
var c1=新的c();
var d=Object.getOwnPropertyDescriptor(c1,'a');
d、 required=true;//这条线
log(JSON.stringify(d))
for(变量k在d中)

console.log(k+'='+d[k])必需的
不是属性描述符。

谢谢@Messervill,但是您的更改将不起作用,因为我需要在定义属性时将
必需的
作为属性,稍后才能返回所需的属性。您阅读文档了吗?使用
defineProperties()
JavaScript不是C#是不可能的。您不能定义自己的属性。@messerbill,在该代码中,“必需”不是属性描述符,而是名为“必需”的属性。见本文件: