属性和属性有什么区别?

cau*_*tic 154 modeling properties

这些似乎意味着同样的事情.但什么术语在哪种情况下更合适?

Aln*_*tak 189

一般而言(在正常的英语用法中)这些术语的含义相同.

在HTML/Javascript的特定上下文中,术语变得混乱,因为DOM元素的HTML表示具有属性(在XML中用于标记中包含的键/值对的术语)但是当表示为JavaScript对象时这些属性显示为对象属性.

为了进一步混淆事物,对属性的更改通常会更新属性.

例如,更改element.href 属性将更新元素上的href 属性,并且将在调用中反映出来element.getAttribute('href').

但是,如果您随后读取了该属性,它将被标准化为绝对URL,即使该属性可能是相对URL!

  • 这应该是公认的答案! (13认同)
  • @RubensMariuzzo,无论它有多精确,这里都没有答案..它只是详细说明了给定上下文的人们可能出现的混乱点。 (3认同)

小智 65

这些话在计算机科学出现之前就存在了.

  1. 属性是我们归于某人或某物的品质或对象.例如,权杖是权力和国家的属性.

  2. 财产是一种没有任何归属的质量.例如,粘土具有粘合性; 或者,金属的一个特性是导电性.属性通过物理现象证明自己,而不需要将它们归于某人或某物.出于同样的原因,说某人具有男性属性是不言而喻的.实际上,您可以说某个属性由某人或某物拥有.

为了公平起见,在计算机科学中,这两个词,至少在大多数情况下,可以互换使用 - 但是程序员通常不会持有英语文学学位,也不会写或关心语法书籍:).

  • 对我有用的是将属性视为客观,将属性视为相对/主观。颜色、形状、分数、风速、温度 (98'F) 和其他客观或可测量的事实等特征构成良好的属性。质地(“软”)、条件(“有风”)、温度(“热”)等特征以及其他并非不可否认的真实陈述可以产生更好的属性。 (2认同)

Wal*_*ner 18

通常,属性用于描述机制或现实世界的事物.

一个属性是用来描述模型.

例如,文档(坐在桌面上)可能具有草稿属性.

对文档建模的类具有一个属性,用于指示它是否为草稿.在这种情况下,属性捕获状态.


Ned*_*der 16

这些术语的确切含义将在很大程度上取决于您所谈论的语言/系统/宇宙.

在HTML/XML中,属性是具有等号和值的标记的一部分,例如,属性并不意味着什么.

因此,我们需要有关您正在讨论的域名的更多信息.

  • 这是不正确的.见Alnitak的回答. (6认同)

小智 15

属性是您在HTML标记中使用的实际内容

<input type="checkbox" checked="checked" />
Run Code Online (Sandbox Code Playgroud)

在此实例中,type和checked是属性.该属性虽然是这些属性的值,浏览器会在DOM元素中保存这些属性.通常,属性和属性的值是相等的,这就是令人困惑的原因.

在这个例子中的DOM元素input具有属性type具有值"checkbox"和属性checked具有值true(注意这个值从HTML属性内的值的不同之处).

使用Firebug,您可以在单击元素并选择"DOM视图"时观察属性的行为.


小智 6

属性和属性有什么区别?
特征和功能有什么区别?特征 和 性格 和有什么不一样?行为和行为有什么区别?

这只是上下文的变化。

对象、产品、个性、人

一个人以一种行为来行动。人格具有给定角色的特征。产品具有派生功能的特征。对象具有赋予其属性的属性。


S.L*_*ott 5

在Python中......

class X( object ):
    def __init__( self ):
        self.attribute
    def getAttr( self ):
        return self.attribute
    def setAttr( self, value ):
        self.attribute= value
    property_name= property( getAttr, setAttr )
Run Code Online (Sandbox Code Playgroud)

属性是一个类似属性的名称,它包含一组setter,getter(和deleter)函数.

属性通常是另一个对象中的单个对象.

尽管如此,Python为您提供了__getattr__允许您扩展"属性"定义的方法.

底线 - 它们几乎是同义词.Python对它们的实现方式进行了技术区分.


dov*_*ove 3

<property attribute="attributeValue">proopertyValue</property>
Run Code Online (Sandbox Code Playgroud)

将是看待它的一种方式。

在 C# 中

[Attribute]
public class Entity
{
    private int Property{get; set;};
Run Code Online (Sandbox Code Playgroud)

  • 很抱歉对此投反对票,但在 XML 中,您标记的属性实际上是一个“元素” (9认同)