<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>js中的对象</title>
</head>
<script type="text/javascript">
/*Object 对象 类比为:塑料袋
* 对象属于一种复合的数据类型,在对象中可以保存多个数据类型的属性
* 分类:
* 1、内建对象(标准的jar包):由ES标准定义的对象,在任何的ES的实现中都可以使用 如Math String
* 2、宿主队象(常用jar包):由js运行环境(浏览器)提供的对象,目前来说主要指由浏览器提供的对象 如BOM DOM
* 3、自定义对象:开发人员自己创建的对象
* */ //1、创建对象 使用new关键字调用的函,是构造函数,构造函数是专门用来创建对象的函数
var obj=new Object(); //2、在对象中保存的值成为属性。语法:对象.属性名="属性值"。如添加一个name属性
obj.name="孙悟空";
obj.gender="男";
obj.age=18; //3、读取对象中属性 语法: 对象.属性名 .如果读到变量中没有的属性,不会报错会返回undefined
/*(1)对象的属性名不强制要求遵守标识符的规范 ,但是尽量是按规范 如 obj.var=45;也对
(2)如果要使用乱七八糟的要采用另一种方式。 对象["属性名"]=属性值,读取时也要采用["属性名"]去读取
如obj["123"]=78;是对的 这种方式更加灵活 在[]中可以传一个变量,这变量的值是什么就会去读取那个变量
(3)、js属性的值可以是任意数据类型,包括可以是一个对象(塑料袋中套个塑料袋)
in:检查一个对象中是否含有某个属性 "name" in obj;
* */
console.log(obj.name); obj.name="tom";//修改属性的值
delete obj.age;//删除对象的age属性
console.log(obj.name); var n="sex";
obj["sex"]="女";
console.log(obj[n]); </script>
<body>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>引用数据类型</title>
<script type="text/javascript">
/*基本数据类型:String、 Number、Boolean、NULL、Undefined
引用数据类型:Object
js中变量都是保存到栈内存中的
1)基本数据类型的值直接在栈内存中存储的,值与值之间单独存在,修改一个变量不会影响其他变量;
2)引用数据类型的值是保存到堆内存的,在new一个对象时在堆中开辟一个空间,变量obj在栈中保存的是
对象的一个内存地址,当发生obj2=obj时等于把地址复制给obj2,它们操作的是同一地址的值,一个变另
一个也变。所谓地址就是一个引用。一个变量的属性改变,另一个也改变。 类似于"巫蛊娃娃"
如果obj2=null; 不会影响obj的引用
new一下等于新开辟一个空间
所有 var obj3=new Object(); obj3.name="TOM";
var obj4=new Object(); obj4.name="TOM";
对象obj3与obj4 不等 ,因为他们指向不同的内存地址。即obj3==obj4 输出为false
*/
var obj=new Object();
obj.name="孙悟空";
var obj2=obj;
obj.name="猪八戒";
console.log(obj.name);
console.log(obj2.name); /*使用字面量来创建一个对象;
* 还可以直接在创建对象时,直接指定对象的属性.语法var 对象名={属性名1:属性值,属性名2:属性值.....};
*/
var obj3={};
obj3.name="三藏";
console.log(obj3.name); var obj4={name:"沙和尚", //这样写是为了清晰
age:12,
obj5:{name: "沙币"}
};
console.log(obj4.age);
console.log(obj4.obj5.name); </script>
</head>
<body>
</body>
</html>

[19/05/28-星期二] JavaScript_ 对象和引用数据类型的更多相关文章

  1. [19/05/26-星期日] JavaScript_ 基本语法_运算符

    一.概念 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <titl ...

  2. [19/05/25-星期六] JavaScript_ 基础知识和基本语法_数据类型

    一.概念 诞生于1995年,刚开始主要用于处理网页中的前端验证(指的是检查用户输入的内容是否符合一定的规则,比如用户名的长度.密码的长度.邮箱格式等). 前身是网景公司的LiveScript语言,傍的 ...

  3. 基类中定义的虚函数在派生类中重新定义时,其函数原型,包括返回类型、函数名、参数个数、参数类型及参数的先后顺序,都必须与基类中的原型完全相同 but------> 可以返回派生类对象的引用或指针

      您查询的关键词是:c++primer习题15.25 以下是该网页在北京时间 2016年07月15日 02:57:08 的快照: 如果打开速度慢,可以尝试快速版:如果想更新或删除快照,可以投诉快照. ...

  4. Python 对象的引用计数和拷贝

    Python 对象的引用计数和拷贝 Python是一种面向对象的语言,包括变量.函数.类.模块等等一切皆对象. 在python中,每个对象有以下三个属性: 1.id,每个对象都有一个唯一的身份标识自己 ...

  5. 并发编程 19—— 显式的Conditon 对象

    Java并发编程实践 目录 并发编程 01—— ThreadLocal 并发编程 02—— ConcurrentHashMap 并发编程 03—— 阻塞队列和生产者-消费者模式 并发编程 04—— 闭 ...

  6. 读 Runtime 源码:对象与引用计数

    以前只是看了很多博客,这次打算看一下源码,并记录下来.想到哪里就读到哪里,写到哪里.读的代码版本是:objc runtime 680,可以从这里下载 https://github.com/RetVal ...

  7. JAVA的对象和引用——一个真实遇到的问题

    最近在写一段代码的时候,不懂JAVA的我被困住了.先简单描述一下要实现的效果:我要往secretVector里塞28个byteVector,这28个byteVector分别装着10个数值,而且这28个 ...

  8. PHP面向对象之对象和引用

    在PHP中对象类型和简单变量类型表现可以说是大相径庭,很多数据类型都要可以在写时进行复制,如当写代码$a=$b时,两个变量因为赋予相同的值而告终.所以需要注意的是,这种情况用在对象时就会完全不同了. ...

  9. 浅谈Java中的对象和引用

    浅谈Java中的对象和对象引用 在Java中,有一组名词经常一起出现,它们就是“对象和对象引用”,很多朋友在初学Java的时候可能经常会混淆这2个概念,觉得它们是一回事,事实上则不然.今天我们就来一起 ...

随机推荐

  1. Linux 性能测试工具Lmbench详解

    Linux 性能测试工具Lmbench详解 2010-06-04 16:07 佚名 评测中心 字号:T | T Lmbench 是一套简易可移植的,符合ANSI/C 标准为UNIX/POSIX 而制定 ...

  2. POJ-2104-Kth Number(主席树)

    链接: https://vjudge.net/problem/POJ-2104#author=malic 题意: 给定一个数组 a[1...n],数组元素各不相同,你的程序要对每次查询Q(i,j,k) ...

  3. 34 String、StringBuffer、StringBuilder

    String的值是不可变的,这就导致每次对String的操作都会生成新的String对象,不仅效率低下,而且大量浪费有限的内存空间. StringBuffer是可变类,和线程安全的字符串操作类,任何对 ...

  4. kafka消费者示范代码(Java)

    1.将kafka里lib目录下(除jar包外还有别的东西)所有的jar包导入工程中. 2.代码 public static void main(String[] args) { //声明连接属性 Pr ...

  5. 使用linq将2个Datatable合并

    DataTable dtStepX = new DataTable("dtStepX"); DataTable dtStepS = new DataTable("dtSt ...

  6. markdown编辑器常用命令

    # 标题H1## 标题H2### 标题H3#### 标题H4##### 标题H5###### 标题H5插入java代码: 以```java表示java代码开始,以```表示代码结束 ```javapu ...

  7. UVA 12299 线段树 ( 单点跟新 , 区间查询)

    题目链接:题意:在传统的RMQ的基础上加上一个操作:shift(i1,i2,i3...ik),表示将这些元素,依次向左移动一位(训练指南247页) #include <iostream> ...

  8. You Only Look Once Unified, Real-Time Object Detection(你只需要看一次统一的,实时的目标检测)

    我们提出了一种新的目标检测方法YOLO.先前的目标检测工作重新利用分类器来执行检测.相反,我们将目标检测作为一个回归问题来处理空间分离的边界框和相关的类概率.单个神经网络在一次评估中直接从完整图像预测 ...

  9. [BZOJ3456]城市规划:DP+NTT+多项式求逆

    写在前面的话 昨天听吕老板讲课,数数题感觉十分的神仙. 于是,ErkkiErkko这个小蒟蒻也要去学数数题了. 分析 Miskcoo orz 带标号无向连通图计数. \(f(x)\)表示\(x\)个点 ...

  10. git创建公钥匙

    目的: 使用SSH公钥可以让你在你的电脑和码云通讯的时候使用安全连接(git的remote要使用SSH地址) 1.打开终端进入.ssh目录输入当下命令 cd ~/.ssh 如果.ssh文件夹不存在,执 ...