`
hzxulei
  • 浏览: 8733 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

对象的使用和属性

阅读更多
对象使用和属性


JavaScript 中所有变量都是对象,除了两个例外 null 和 undefined。
false.toString() // 'false'
[1, 2, 3].toString(); // '1,2,3'
function Foo(){}Foo.bar = 1;Foo.bar; // 1
一个常见的误解是数字的字面值(literal)不是对象。这是因为 JavaScript 解析器的一个错误, 它试图将点操作符解析为浮点数字面值的一部分。
2.toString(); // 出错:SyntaxError
有很多变通方法可以让数字的字面值看起来像对象。
2..toString(); // 第二个点号可以正常解析
2 .toString(); // 注意点号前面的空格
(2).toString(); // 2先被计算


对象作为数据类型

JavaScript 的对象可以作为哈希表使用,主要用来保存命名的键与值的对应关系。

使用对象的字面语法 - {} - 可以创建一个简单对象。这个新创建的对象从 Object.prototype 继承下面,没有任何自定义属性。
var foo = {}; // 一个空对象// 一个新对象,拥有一个值为12的自定义属性'test'var bar = {test: 12};

访问属性

有两种方式来访问对象的属性,点操作符或者中括号操作符。
var foo = {name: 'Kitten'}foo.name; // kittenfoo['name']; // kittenvar get = 'name';foo[get]; // kittenfoo.1234; // SyntaxErrorfoo['1234']; // works
两种语法是等价的,但是中括号操作符在下面两种情况下依然有效 - 动态设置属性 - 属性名不是一个有效的变量名(译者注:比如属性名中包含空格,或者属性名是 JS 的关键词)

译者注:在 JSLint 语法检测工具中,点操作符是推荐做法。


删除属性

删除属性的唯一方法是使用 delete 操作符;设置属性为 undefined 或者 null 并不能真正的删除属性, 而仅仅是移除了属性和值的关联。
var obj = {    bar: 1,    foo: 2,    baz: 3};obj.bar = undefined;obj.foo = null;delete obj.baz;for(var i in obj) {    if (obj.hasOwnProperty(i)) {        console.log(i, '' + obj[i]);    }}

上面的输出结果有 bar undefined 和 foo null - 只有 baz 被真正的删除了,所以从输出结果中消失。


属性名的语法
var test = {    'case': 'I am a keyword so I must be notated as a string',    delete: 'I am a keyword too so me' // 出错:SyntaxError};

对象的属性名可以使用字符串或者普通字符声明。但是由于 JavaScript 解析器的另一个错误设计, 上面的第二种声明方式在 ECMAScript 5 之前会抛出 SyntaxError 的错误。

这个错误的原因是 delete 是 JavaScript 语言的一个关键词;因此为了在更低版本的 JavaScript 引擎下也能正常运行, 必须使用字符串字面值声明方式。
分享到:
评论

相关推荐

    codesys面向对象的方法属性动作接口

    codesys面向对象的方法属性动作接口是指在codesys中实现面向对象编程的方法、属性和动作接口。这种接口允许用户在codesys中实现面向对象编程,使用继承、多态和封装等面向对象编程的基本概念。 在codesys中,方法、...

    JS删除对象中某一属性案例详解

    本文主要讲解了如何在JavaScript中删除对象的某个属性,并通过实际案例详细解释了delete操作符的使用方法。...在实际应用中,开发者需要合理利用delete操作符,以便有效地控制对象属性的存取和内存管理。

    JavaScript Window窗口对象属性和使用方法

    1、Window对象属性 每个对象都有自己的属性,顶级对象Window是所有其他子对象的父对象,它可以出现在每个页面上,并且可以咋单个JS应用程序中被多次使用。 下表列出了一些Window对象常用属性: 属性 说明 ...

    遍历指定对象所有的属性名称和值.rar

    遍历对象属性的方法主要有以下几种: 1. **for...in循环**: 这是最常用的遍历对象属性的方式。`for...in`循环会遍历对象的所有可枚举属性,包括其原型链上的属性。例如: ```javascript let obj = {name: '...

    VBA各对象的属性、方法查询集

    本文档聚焦于Excel中的VBA对象及其属性和方法,提供了针对Application对象的详细属性和方法查询集,这些内容对于使用VBA进行Excel开发的用户来说非常有用。 Application对象是VBA中最重要的对象之一,它是Excel的...

    ASP对象属性参考手册

    这个"ASP对象属性参考手册"显然是一个关于ASP中核心对象及其属性的详细指南。在ASP中,有几个关键的对象,它们是Web应用程序的核心组成部分,包括Request、Response、Session、Application、Server和ObjectContext等...

    微信小程序 两种为对象属性赋值的方式详解

    微信小程序两种为对象属性赋值的方式 对应config.wxml 阶段一 对应config.js data:{ //定义对象 configs:{} } //方式一 switchChange:function(e){ //为对象的某一属性赋值 configs.config1={ }; ...

    Java对象属性数据比较,返回变化数据

    总结起来,`Java对象属性数据比较,返回变化数据`这个主题涉及到Java的面向对象特性,包括对象、属性、以及反射API的使用。`ObjectCompareUtil`工具类提供了一种通用的方式来比较两个对象的属性,而`...

    利用反射机制动态获取对象属性名称及数据类型

    在本例中,我们利用`Type`类的`GetProperties`方法获取了`Student`类的所有公共属性,然后通过`PropertyInfo`对象获取属性名和数据类型。此外,`SetValue`方法使我们能够在运行时修改对象的属性值,展示了反射机制的...

    Ajax基本对象的属性和方法

    Ajax 基本对象是指在异步 JavaScript 和 XML(AJAX)技术中使用的基本对象,该对象提供了一些属性和方法来处理 XML 的 DOM 元素和遍历 XML 的 DOM 元素。下面是 Ajax 基本对象的属性和方法的详细介绍: 属性 Ajax ...

    选中对象,获取邻接对象属性值

    总的来说,“选中对象,获取邻接对象属性值”是GIS应用中常见的操作,它结合了空间分析和属性查询的能力。通过SuperMap .NET的iObject和SpatialQuery类,开发者可以方便地实现这一功能,从而在实际项目中实现更复杂...

    解决解决对象不支持此属性或方法工具

    解决解决对象不支持此属性或方法工具,当运行弄个程序,提示对象不支持此属性,即可以使用该工具

    java list根据对象的某个属性的值去重

    java list根据对象的某个属性的值去重,java list根据对象的某个属性的值去重java list根据对象的某个属性的值去重

    解决Vue2.0 watch对象属性变化监听不到的问题

    受 ES5 的限制,Vue.js 不能检测到对象属性的添加或删除。 请参照https://v1-cn.vuejs.org/guide/reactivity.html 解决方式: 通过vue的this.$set(object, key, value)方法 通过Object.assign()重新创建一个对象, ...

    Codesys汇川AM600面向对象(动作方法属性).pdf

    - **类**:类是创建对象的模板,定义了对象的属性(数据成员)和方法(函数成员)。 - **属性**:属性是对象的状态,即对象中存储的数据。 - **方法**:方法是对象的行为,是与对象相关的操作或函数。 2. **在AM...

    检查控制台中的JavaScript对象方法和属性

    在本主题中,我们将深入探讨如何在控制台中检查JavaScript对象的方法和属性,这对于理解和解决问题至关重要。 首先,理解JavaScript对象的基本概念是至关重要的。对象是键值对的集合,这些键可以是字符串或符号,而...

    关于java中对象属性值的校验的思考

    这篇文章将探讨如何在Java中进行对象属性值的校验,以及相关的工具和源码分析。 首先,对象属性值的校验通常在对象创建(构造函数)或属性赋值时进行。这是为了确保对象的状态始终符合预设的业务规则。例如,一个...

    Excel对象、属性、方法、实例

    这里,我们使用了`Worksheets`对象的引用,`Range`对象的`Sum`方法,以及字符串连接和`Format`函数,这些都是Excel VBA中的常见操作。 此外,VBA还支持集合概念,如`Worksheets`就是一个`Worksheet`对象的集合。你...

    用java实现监听对象的属性变更

    (1)创建测试页面,在chapter08项目的WebContext根目录中,编写一个testattribute.jsp页面,以观察各个域对象属性事件监听器的作用。 (2)在cn.itcast.chapter08.listener包中,编写一个名为MyAttributeListener的...

    ADO三大对象的属性、方法、事件及常数.

    了解这些对象的属性、方法和事件对于使用ADO进行数据库操作至关重要。通过合理地配置和调用,开发者可以实现高效的数据库交互,包括读取、写入、更新和删除数据。同时,了解相关的常数有助于更精确地控制数据库操作...

Global site tag (gtag.js) - Google Analytics