通过var object={}  对象字面量,可以叫对象直接量来自定义一个对象

对象自面量是一个表达式,这个表达式的每次运算都创建并初始化一个新对象。每次计算对象字面量的时候,也都会计算他的每个属性值。也眩光是说,如果在一个重复调用的函数中的循环体内使用了对象的直接量,它将创建很多新对象,并且每次创建的对象的属性值也有可能不同。

演示代码:

 <script>
var people ={x:1,y:2,z:3} //用字面量定义一个对象,是以名值对的方式来保存的
var student = { //还可以换行写,每义定一个属性名和值,用逗号分开,最后一个不加逗号,加了会被忽略,但在ie中会报错,最好不要加
"x":1, //定义属性名的时候可以用双引号
'y':2, //定义属性名的时候可以用单引号
z:12.3, //定义属性名的时候可以加任何
"for":"使用关键字来定义属性名要加上引号", //使用关键字定义的话必须加上双引号
man:{ //对象里面还可以签到对象
text:null, //对象的属性值可以是多种数据类型
text2:undefined,
married:true
}
}
</script>

可以通过 var obj = new Object();创建对象    演示代码:

 <script>
var obj = new Object() //创建了一个对象,object对象也是对象中的顶级对象
var arry = new Array() //创建了一个数组对象
var date = new Date() //创建一个时间对象
var reg = new RegExp("js") //创建一个正则对象
</script>

通过构造函数来创建对象

通过instanceof操作符可以检测一个对象是否由某个指定的构造器函数来创建的对象

注意:

使用的时候可以通过new操作符得到对象。

用构造器创建对象的时候可以接收参数

构造器函数的首首字母最好大写,区别其他的一般函数  演示代码:

 <script>
function Person(name,age){ //创建一个person的函数
this.name =name; //此处的this对应的是对象obj
this.age = age
}
var obj = new Person("ziksang",21) //用一个构造函数来创建了对象
alert(obj.name) //=>ziksang 用对象名.对象的属性来获得属性值
alert(typeof obj) //=>用typeof来检测obj是不是一个对象类型, 返回object
alert(obj instanceof Person) //=> 用instanceof 来检测objcet是不是person函数构造出来的对象,返回true
</script>

通过object.create来创建对象

演示代码:

 <script>
var obj = Object.create({x:1})
var obj = Object.create(null) //创建了一个没有原型的对象,没有任何方法
var obj = Object.create(obj.prototype) //创建了一个普通的空对象
</script>

js 的对象--如何定义一个对象的更多相关文章

  1. JS中对象的定义及相关操作

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  2. JS中JSON对象的定义和取值

    1.JSON(JavaScript Object Notation)一种简单的数据格式,比xml更轻巧.JSON是JavaScript原生格式,这意味着在JavaScript中处理JSON数据不需要任 ...

  3. JS中类或对象的定义说明

    本篇文章主要是对JS中类或对象的定义进行说明介绍.我们知道,JS是面向对象的.谈到面向对象,就不可避免的要涉及类的概念.一般像c#,java这些强类型语言都有固定的定义类的语法.而JS的不同之处在于它 ...

  4. js对象的定义及处理

    一,概述 在Java语言中,我们可以定义自己的类,并根据这些类创建对象来使用,在Javascript中,我们也可以定义自己的类,例如定义User类.Hashtable类等等. 目前在Javascrip ...

  5. js中对象使用

    简单记录javascript中对象的使用 一.创建对象 //创建一个空对象 var o={}; //创建一个含有两个属性的对象,x.y var o2={x:12,y:'12',name:'JS'}; ...

  6. JS面相对象

    一.理解对象: //第一种:基于Object对象 var person = new Object(); person.name = 'My Name'; person.age = ; person.g ...

  7. 对JS关于对象创建的几种方式的整理

    最近一直在看JS高级程序设计这本书,有空来梳理一下几种创建对象的方式.话不多说,直接步入正题. 第一种:Object构造函数创建 var Person = new Object();Person.na ...

  8. js中对象和对象创建方法

    这一次我们来说一说在JavaScript中经常会用到的一个复杂基本类型,对象,先从对象的属性讲起,再讲对象的创建方法,基本涵盖了创建对象的各种方法,大家一起学习呀~ 一.对象 要掌握对象的使用及继承, ...

  9. js面对对象编程(二):属性和闭包

    上篇博客中解说了一些js对象的基本概念和使用方法.这篇博客解说一下js属性方面的:公有属性.私有属性,特权方法. 假设学过java.公有属性.私有属性,特权方法(即能够訪问和设置私有属性的方法)一定非 ...

随机推荐

  1. 广州Uber优步司机奖励政策(2月1日~2月7日)

    滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...

  2. [置顶] shell变量赋值-linux

    Shell变量赋值 命名须规则: 1)使用变量无需事先声明 2)首个字符必须为字母(a-z,A-Z) 3)中间不能有空格,可以使用下划线(_) 4)不能使用标点符号 5)不能使用bash里的关键字(可 ...

  3. Java工作队列和线程池

    背景    最近的需要做一个与设备通信的web项目.当然,我们需要写好与设备之间的通信协议(socket).大致的时序逻辑时:当用户用浏览器点击页面某一控件后,它就向后台发送一个post请求,后台解析 ...

  4. 5步做好vsftpd

    系统:centos6.5 X86 1、yum -y install vsftpd 2、vim /etc/vsftpd/vsftpd.conf 可以用cat vsftpd.conf | grep -v ...

  5. CAS+SSO原理浅谈

    http://www.cnblogs.com/yonsin/archive/2009/08/29/1556423.htmlSSO 是一个非常大的主题,我对这个主题有着深深的感受,自从广州 UserGr ...

  6. 安装MYSQL 出现Error 1045 access denied 的解决方法

    操作系统:WINDOWS10 系统 数据库版本:mysql 5.x 提示:access denied for user 'root'@'localhost' using password yes/no ...

  7. 《linux程序设计》--读书笔记--第十四章信号量、共享内存和消息队列

    信号量:用于管理对资源的访问: 共享内存:用于在程序之间高效的共享数据: 消息队列:在程序之间传递数据的一种简单方法: 一.信号量 临界代码:需要确保只有一个进程或者一个执行线程可以进入这个临界代码并 ...

  8. netsh

    NetSH (Network Shell) 是windows系统本身提供的功能强大的网络配置命令行工具. 导出配置脚本:netsh -c interface ip dump > c:\inter ...

  9. hadoop错误Cannot load libcrypto.so (libcrypto.so cannot open shared object file No such file or directory)

    报如下错误 解决方法: 1.使用hadoop checknative –a命令检查,报如下错误 2.使用如下命令建立libcrypto.so文件的符号链接 如果,您认为阅读这篇博客让您有些收获,不妨点 ...

  10. popupWindow使用详解

    popupWindow说起来简单,但是使用略麻烦,今天带大家来看看怎么使用,先来看看效果图: 先来看看布局文件吧: <RelativeLayout xmlns:android="htt ...