JS对象定义和基本方法
- js如何定义对象
用var关键字
JavaScript用一个{…}表示一个对象,键值对以xxx: xxx形式申明,用,隔开。注意,最后一个键值对不需要在末尾加,,如果加了,有的浏览器(如低版本的IE)将报错。
eg:
var 对象名字={
属性
方法
<script>var xiaoming={name:"worker",age:23,salary:7000,};alert(worker.salary+worker.name+worker.age);</script>
};
- 总结:
1、记得花括号后面的分号
2、每个属性用逗号隔开 - 访问属性是通过.操作符完成的,但这要求属性名必须是一个有效的变量名。如果属性名包含特殊字符,就必须用’'括起来:
var xiaohong = { name: '小红','middle-school': 'No.1 Middle School' };
xiaohong的属性名middle-school不是一个有效的变量,就需要用’'括起来。访问这个属性也无法使用.操作符,必须用[‘xxx’]来访问:
xiaohong['middle-school']; // 'No.1 Middle School'
xiaohong['name']; // '小红'
xiaohong.name; // '小红'
实际上JavaScript对象的所有属性都是字符串,不过属性对应的值可以是任意数据类型.
如果访问一个不存在的属性会返回什么呢?JavaScript规定,访问不存在的属性不报错,而是返回undefined:
var xiaoming = {name: '小明'
};
console.log(xiaoming.name);
console.log(xiaoming.age); // undefined
由于js是对象是一个动态类型,你可以自由的给对象添加或删除属性:
eg:
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><script>var worker={name:"xiaoming",age:23,salary:7000,'middle-school': 'No.1 Middle School'};// 动态添加属性worker.time;worker.time=20;worker.weight=100;// 删除属性delete worker.weight;// alert(worker.salary+worker.name+worker.age);document.write(worker.time+"<br />");document.write(worker.weight+"<br />");document.write(worker.name+"<br />");document.write(worker['name']+"<br />");document.write(worker['middle-school']+"<br />");document.write(worker.mother);</script>
</head>
<body>
</body>
</html>
- 结果:
20
undefined
xiaoming
xiaoming
No.1 Middle School
undefined
- 如何判断属性是否在对象里面:用in
格式:
‘属性’ in 对象名;是返回true否返回false
不过要小心,如果in判断一个属性存在,这个属性不一定是本身的,它可能是继承得到的: - 若要判断是否是本身的有办法
要判断一个属性是否是xiaoming自身拥有的,而不是继承得到的,可以用hasOwnProperty()方法: - worker.hasOwnOperty(‘name’);
- 如何遍历对象用in
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><script>var worker={name:"xiaoming",age:23,salary:7000,'middle-school': 'No.1 Middle School'};// 动态添加属性worker.time;worker.time=20;worker.weight=100;// 删除属性delete worker.weight;delete worker['weight'];// alert(worker.salary+worker.name+worker.age);document.write(worker.time+"<br />");document.write(worker.weight+"<br />");document.write(worker.name+"<br />");document.write(worker['name']+"<br />");document.write(worker['middle-school']+"<br />");document.write(worker.mother);// 如何遍历对象for(var k in worker){document.write(k+':'+worker[k]);}</script>
</head>
<body>
</body>
</html>
结果:20
undefined
xiaoming
xiaoming
No.1 Middle School
undefinedname:xiaomingage:23salary:7000middle-school:No.1 Middle Schooltime:20
JS对象定义和基本方法相关推荐
- js对象转数组的方法一种方法
js对象转数组的方法一种方法 let obj = { name: '张三', age: 18, sex: '男' };let a = Object.values(obj) //属性值 // ['张三' ...
- JS对象和JSON的相互转换方法
JS对象和JSON的相互转换方法 一个复杂的js对象 //json要求和js对象是一样的,只不过key必须是字符串//js对象在声明的时候是否加双引号是可以选择的var student = {last ...
- 基于js对象,操作属性、方法详解
一,概述 在Java语言中,我们可以定义自己的类,并根据这些类创建对象来使用,在Javascript中,我们也可以定义自己的类,例如定义User类.Hashtable类等等. 目前在Javascrip ...
- JS对象中常见的方法
本文主要介绍Native对象,即在ECMAScript标准中定义和描述,包括JavaScript内置对象(数组,日期对象等)和用户自定义的对象 目录 1. 对象的创建并添加属性 1. new 对象 2 ...
- 微信小程序—使用app.js里定义的全局方法
微信小程序-使用全局方法 1.在app.js里定义全局方法,例如getData()方法 2.在index.js里使用全局方法getData() 首先获取全局let app = getApp(): 然后 ...
- wordVBA运行时错误‘4198‘:应用程序定义或对象定义错误 解决方法
项目场景: Word VBA 问题描述: 最近在学习wordVBA时遇到以下问题:运行时错误'4198':应用程序定义或对象定义错误 这是我写的一段Excel VBA操作Word的代码,作用是打开已存 ...
- 通过JS原型定义字符串格式化方法
初识原型 在python中,我们可以通过format方法来格式化字符串,比如: >>> s = 'I am {name}'.format(name='Ayhan') >> ...
- Oracle 查看 表 存储过程 触发器 函数 等对象定义语句的方法
有时候,我们想查看表,存储,触发器等对象的定语语句,有以下两种方法: 1. 查 all_source 表 2. 用 DBMS_METADATA 包. 一. 通过 all_source 表 先来确认下, ...
- 给JS对象添加属性和方法
方式一:在定义对象时,直接添加属性和方法 function Person(name,age) {this.name = name;this.age = age;this.say = function( ...
- js对象转字符串的方法
对象使用的小demo 要求:有一个对象var obj = { 1:'my' , 2: 'hello' ,3:'world' },请打印出'my hello world'. 方法一: var obj = ...
最新文章
- PHP-开发环境搭建
- 数据结构实验之查找四:二分查找(递归实现和while循环实现)
- [WinSock]封装WSAAsyncSelect!
- python 字符串拼接_Python字符串拼接的6种方法(转)
- [转贴] 从零开始学C++之异常(二):程序错误、异常(语法、抛出、捕获、传播)、栈展开...
- SpringBoot WEB 核心原理
- nagios 主机报警别名修改
- net user test 123456 /add
- java具有回收垃圾的作用吗_Java中垃圾回收功能
- 升级iOS10后,AVPlayer有时候播放延时和播放不了的问题
- cad查看_CAD快速看图 for mac(CAD图纸查看工具) v4.3.7中文版
- 添加透明FLASH和FLASH大全
- 前端如何来做权限管理?
- Java解惑之长整型
- 杰洛特的Python之旅01_抓取微信性别数据在web上展现饼图
- NBA表格_NBA球星大排位16—季后赛荣誉汇总
- powerquery分组_Power Query系列 - 排序Ranking
- android 单点登录
- 安卓购物商城源码(服务端+客户端)
- 计算机病毒是在哪里产生的,计算机病毒如何产生