-4

我正在试验 jQuery 插件,我注意到一段代码类似于下面的代码:http: //docs.jquery.com/Plugins/Authoring

var defaults = {
    value : 'hello, world'
}

var options = $.extend(defaults,options)

我的问题是:什么是 { 和 }?它们像数组吗?如何获得“价值”的价值?

4

4 回答 4

4

在您的代码中,{}是一个对象文字。这是一种包含数据的面向对象的方式。在这里了解更多

简而言之,对象文字存储键值对的异构列表。例如:

var x = { key : value }

不要与您在此处看到的内容和以下内容混淆:

var x = function() { .. }

这里的括号表示一个包含函数执行环境的块。这对象文字不同,因为函数旨在在受控环境中运行代码,而对象文字是数据的容器。在此处了解有关函数的更多信息

要回答您的问题:要获取 的值,value我们必须首先列出创建它的对象,然后是点.,最后是属性value。像这样:

defaults.value; // 'hello, world'

如果您在控制台 ( console.log) 中运行它,您将看到该字符串。

请注意,此构造并非特定于 jQuery,而是特定于 JavaScript 本身。jQuery 是由 JS 组成的库,因此遵守 JS 拥有的相同语法规则。

于 2012-12-23T23:32:48.070 回答
4

{}用于定义对象,请参阅:使用对象

var person = {
  name: 'john',
  age: 43
}

意思是一样的

var person = new Object()
person.name = 'john';
person.age = 43;

In your code a simple object is created and passed to the jquery extend() function

于 2012-12-23T23:34:37.037 回答
1

{}花括号)用于创建对象字面量。 value是的属性成员defaults

对象是将多条数据存储为一个单元的方法,并且通常包括可以由它执行的其他操作和动作。它们提供了一种通常直观的方式来使用代码对现实世界中的事物进行建模。

如果要访问存储在 中的字符串value,请调用defaults.value.

于 2012-12-23T23:32:58.877 回答
0

它们是哈希(或者严格来说是关联数组),要获取“Value”的值,您可以执行以下操作:

   defaults['value'];

交替:

   defaults.value;

要检查关联数组是否具有键“值”,您可以执行以下操作:

  defaults.hasOwnProperty('value');

并添加一个带有键“值”的字符串:

  defaults['value'] = 'some string';
于 2012-12-23T23:34:03.157 回答