Javascript 这是什么意思?

Javascript 这是什么意思?,javascript,jquery,Javascript,Jquery,我猜a实际上是一个函数,但是如何理解(!a.fkey)?a是一个对象。在这种情况下,如果它没有设置(或是错误的),它将设置.fkey属性 对于SO chat,这允许从页面提供或获取fkey输入,它是页面底部的隐藏输入,填充有用于验证请求等的值 目前它总是从DOM中提取,所以实际上这个函数只是添加了属性,如果提供了属性,它将不受影响。a是一个对象。在这种情况下,如果它没有设置(或是错误的),它将在其上设置.fkey属性 对于SO chat,这允许从页面提供或获取fkey输入,它是页面底部的隐藏输入

我猜
a
实际上是一个函数,但是如何理解
(!a.fkey)

a
是一个对象。在这种情况下,如果它没有设置(或是错误的),它将设置
.fkey
属性

对于SO chat,这允许从页面提供或获取
fkey
输入,它是页面底部的隐藏输入,填充有用于验证请求等的值


目前它总是从DOM中提取,所以实际上这个函数只是添加了属性,如果提供了属性,它将不受影响。

a
是一个对象。在这种情况下,如果它没有设置(或是错误的),它将在其上设置
.fkey
属性

对于SO chat,这允许从页面提供或获取
fkey
输入,它是页面底部的隐藏输入,填充有用于验证请求等的值


目前它总是从DOM中提取,所以实际上这个函数只是添加了属性,如果提供了属性,它将不受影响。

a
不是一个函数,而是一个对象


a.fkey
正在访问
a
对象的成员。
表示如果成员不存在或值为false,则表达式的计算结果为
true
,并且
fkey
成员设置为
$(“input[name='fkey'])。attr('value'),也可以通过
.val()
而不是
.attr('value')
来完成。a
不是一个函数,而是一个对象


a.fkey
正在访问
a
对象的成员。
表示如果成员不存在或值为false,则表达式的计算结果为
true
,并且
fkey
成员设置为
$(“input[name='fkey'])。attr('value')
,也可以使用
.val()
而不是
.attr('value')
来完成。如果
a
中还不存在名为
fkey
的成员,则您发布的函数会将其添加到
a
!a、 fkey
part本质上意味着“不存在”(这是因为一旦分配,成员不会计算为
false
)。

您发布的函数将名为
fkey
的成员添加到
a
,如果该成员不存在。
!a、 fkey
部分本质上意味着“不存在”(这是因为一旦分配,成员就不会计算为
false
)。

函数获取一个
对象
,并向其添加一个
fkey
属性,该属性将是
字段

例如:


该函数接受一个
对象
,并向其添加一个
fkey
属性,该属性将是
字段

例如:


@马克-请不要更正答案-我的意思是“falsy”,而不是“false”。这太奇怪了,我们都使用了相同的术语@雅各布-这是阿法克的常用术语:对不起,以前从未听说过这个术语,所以认为它是一个打字错误。你每天都在学习;)@马克-请不要更正答案-我的意思是“falsy”,而不是“false”。这太奇怪了,我们都使用了相同的术语@雅各布-这是阿法克的常用术语:对不起,以前从未听说过这个术语,所以认为它是一个打字错误。你每天都在学习;)
function fkey(a) {
    a || (a = {});
    if (!a.fkey) a.fkey = $("input[name='fkey']").attr("value");
    return a
}
var temp = {};    // make a new object
fkey(temp);       // expand it with fkey's value
alert(temp.fkey); // WATCH ME HERE