为什么我不能设置JavaScript函数的名称属性? [英] Why can't I set a JavaScript function's name property?

查看:149
本文介绍了为什么我不能设置JavaScript函数的名称属性?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在学习JavaScript并阅读这些函数就像对象一样,可以设置如下属性:

I am learning JavaScript and read that functions are like objects and can have properties set like this:

var person = function(){
}
person.name="John Smith"; //output ""
person.age=21; //output 21
person.profession="Web Developer"; //output "Web Developer"

为什么名称属性为空?

感谢

Thanks

推荐答案

因为 name 是非标准不可写 属性功能对象。函数声明和命名函数表达式都是命名的,而您有一个匿名函数表达式,其< name 是

Because name is a non-standard, non-writable property of function objects. Function declarations and named function expressions are named, while you have an anonymous function expression whose name is "".

您可能需要一个普通对象:

You probably wanted a plain object:

var person = {
    name: "John Smith",
    age: 21,
    profession: "Web Developer"
};

这篇关于为什么我不能设置JavaScript函数的名称属性?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆