我们在C#中使用Attribute
,如:
[Required]
string email;
我们如何在 JavaScript
中实现这一目标我使用了以下内容,但这不会发回
var c=function(){
Object.defineProperties(this,{
a:{
writable: true,
enumerable: true,
configurable: true,
required:true
}
});
}
var c1=new c();
var d=Object.getOwnPropertyDescriptor(c1, 'a');
console.log(JSON.stringify(d))
for(var k in d)
console.log(k+' = '+d[k]);
required
缺失
答案 0 :(得分:2)
在JavaScript required
中不是属性描述符。
答案 1 :(得分:0)
根据文档(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty),可以解释这种行为。打开链接并阅读Description
。
有几个参数可以定义,required
不是其中之一。这就是为什么它不会应用于您的对象。如果你想实现这一点,你必须做这样的事情:
var c=function(){
Object.defineProperties(this,{
a:{
writable: true,
enumerable: true,
configurable: true
}
});
}
var c1=new c();
var d=Object.getOwnPropertyDescriptor(c1, 'a');
d.required = true; // THIS LINE
console.log(JSON.stringify(d))
for(var k in d)
console.log(k+' = '+d[k]);