5.1 JS中Object类型
1.Object类型是引用类型中的一种。
2.创建Object实例(对象)的方式:
方式1:使用new操作符,后面跟上Object构造函数。如:
var obj = new Object();//创建Object对象
obj.name = "1024idea";//给对象添加属性
obj.about = "JavaScript教程";// 给对象添加属性
方式2:对象字面量方式,对象字面量方式是对象简写的一种形式
var obj = {
name:"1024idea",
about:"JavaScript教程";
};
你也可以创建一个空对象,后续给对象添加属性:
var obj = {};
obj.name = "1024idea";//给对象添加属性
obj.about = "JavaScript教程";// 给对象添加属性
3.在实际的开发项目中,我们更喜欢用对象字面量方式。优点在于:(1)简洁 (2)可以向函数中传递大量参数。如:
function showInfo(args){
var output = "";
if(typeof args.name == "string"){
output += "name:"+args.name;
}
if(typeof args.age == "number"){
output += "age:"+args.about;
}
console.log(output);
}
showInfo({name:"1024idea", age:"10"}); //函数调用,传入大量参数
4.访问对象属性的几种方式:
(1)方式一:.点表示法,如:
var obj = {
name:"zhangsan",
score:100,
weight:180
}
console.log(obj.name);// 点表示法
console.log(obj['name']);// 其实也可以用方括号表示法
下面来看一个点表示法去访问对象的属性的例子,稍微难一点的例子,如:
var peronProperty = "";
// JSON对象格式
var objJson = {
total: 3,
data: [
{
"name":"张三",
"age":20,
},
{
"name":"李四",
"age":30
},
{
"name":"王五",
"age": 40
}
]
};
for(var k in objJson.data){
peronProperty += "姓名:"+objJson.data[k].name+",年龄:"+objJson.data[k].age+";\r";
}
console.log(peronProperty);// 姓名:张三,年龄:20; 姓名:李四,年龄:30; 姓名:王五,年龄:40;
(2)方式二:[ ] 方括号表示法
一般来说,我们是用点表示法来访问对象的属性的。
点表示法和方括号表示法的区别:
①一般我们用点表示法,如果属性中包含一些特殊字符,如空格,关键字等,我们则用方括号表示法。
②方括号表示法有个优点就是:可以通过变量来访问属性。,其实在上面的那个例子中 objJson.data[k] 这个就是方括号表示法,其中 k 是一个变量。
原文链接:http://www.1024idea.com/archives/167
5.1 JS中Object类型的更多相关文章
- js中object类型模拟java中的map
- JS中基本类型与包装类型的关系
对于JS中一些类型的转化的东西,自己测试并得出的结论,有错误的地方请大大们留言. 不多废话,直接贴代码,测试请直接拷贝全部代码: <!DOCTYPE html> <html> ...
- 推断js中的类型:typeof / instanceof / constructor / prototype
怎样推断js中的类型呢,先举几个样例: var a = "jason"; var b = 123; var c = true; var d = [1,2,3]; var e = n ...
- js中属性类型:数据属性与访问器属性
js中属性类型分为两种:数据属性和访问器属性 在js中,对象都是由名值对构成的,名:就是我们所说的属性名,值就是属性对应的值(基本值.对象.方法). ECMA-262第5版定义了只有内部才用的特性,描 ...
- js中Object.defineProperty()和defineProperties()
在介绍js中Object.defineProperty()和defineProperties()之前,我们了解下js中对象两种属性的类型:数据属性和访问器属性. 数据属性 数据属性包含一个数据的位置, ...
- js中boolean类型的理解
<html> <head> <script type="text/javascript"> var x="12"; aler ...
- JS中Float类型加减乘除 修复 JQ 操作 radio、checkbox 、select LINQ to SQL:Where、Select/Distinct LINQ to SQL Count/Sum/Min/Max/Avg Join
JS中Float类型加减乘除 修复 MXS&Vincene ─╄OvЁ &0000027─╄OvЁ MXS&Vincene MXS&Vincene ─╄Ov ...
- JS中数值类型的本质
一.JS中的数值类型 众所JS爱好友周知,JS中只有一个总的数值类型--number,它包含了整型.浮点型等数值类型.其中,浮点数的实现思想有点复杂,它把一个数拆成两部分来存储.第一部分是有效位数,也 ...
- js中object的申明方法
//js中的对象申明使用new Object(); //object类型的数据类似于数组通过下表来访问其中的值 //example1 var person=new Object(); person.n ...
随机推荐
- java.IO输入输出流:过滤流:buffer流和data流
java.io使用了适配器模式装饰模式等设计模式来解决字符流的套接和输入输出问题. 字节流只能一次处理一个字节,为了更方便的操作数据,便加入了套接流. 问题引入:缓冲流为什么比普通的文件字节流效率高? ...
- MySQL加密
MySQL字段加密和解密 1.加密:aes_encrypt('admin','key') 解密:aes_decrypt(password,'key') 2.双向加密 通过密钥去加密,解密的时候的只有知 ...
- [PHP源码阅读]explode和implode函数
explode和implode函数主要用作字符串和数组间转换的操作,比如获取一段参数后根据某个字符分割字符串,或者将一个数组的结果使用一个字符合并成一个字符串输出.在PHP中经常会用到这两个函数,因此 ...
- ABP源码分析二十六:核心框架中的一些其他功能
本文是ABP核心项目源码分析的最后一篇,介绍一些前面遗漏的功能 AbpSession AbpSession: 目前这个和CLR的Session没有什么直接的联系.当然可以自定义的去实现IAbpSess ...
- Entity Framework 6 Recipes 2nd Edition(11-2)译 -> 为一个”模型定义”函数返回一个计算列
11-3. 为一个”模型定义”函数返回一个计算列 问题 想从”模型定义”函数里返回一个计算列 解决方案 假设我们有一个员工(Employee)实体,属性有: FirstName, LastName,和 ...
- [Java Collection]List分组之简单应用.
前言 今天有一个新需求, 是对一个List进行分组, 于是便百度到一些可用的代码以及我们项目使用的一些tools, 在这里总结下方便以后查阅. 一: 需求 现在我们一个数据库表t_series_val ...
- 如何在Nginx下配置PHP程序环境
1.nginx与PHP的关系 首先来看nginx与php的关系, FastCGI的关系(而不是像apache那样安装成nginx的模块) FastCGI的意思是, 快速的通用网关接口:CGI Comm ...
- 在SQL Server中为什么不建议使用Not In子查询
在SQL Server中,子查询可以分为相关子查询和无关子查询,对于无关子查询来说,Not In子句比较常见,但Not In潜在会带来下面两种问题: 结果不准确 查询性能低下 下面 ...
- .Net使用RabbitMQ详解
序言 这里原来有一句话,触犯啦天条,被阉割!!!! 首先不去讨论我的日志组件怎么样.因为有些日志需要走网络,有的又不需要走网路,也是有性能与业务场景的多般变化在其中,就把他抛开,我们只谈消息Rabbi ...
- 【Win10 应用开发】自定义应用标题栏
Win 10 app对窗口标题栏的自定义包括两个层面:一是只定义标题中各部分的颜色,如标题栏上文本的颜色.三个系统按钮(最大化,最小化,关闭)的背景颜色等:另一层是把窗口的可视区域直接扩展到标题栏上, ...