11.1 js中级,数据类型、数据储存方式、作用域内存空间的区别以及例识别。
一. 基本数据类型和引用数据类型的区别。
1.基本数据类型:基本数据类型就是简单的操作值。
2.引用数据类型:就是把引用的地址赋给变量。
堆内存:
就是存放代码块的,存放形式有两种
1)对象以键值对的形式存放
2)引用数据类型的赋值,是把引用的地址赋给他,在修改属性的时候,通过地址查找然后修改。
引用数据类型如何操作?
先通过引用地址去查找堆内存中的代码,然后再去修改
二. 数据储存的方式:
1.string ···· " "
2.array ···· [ ]
3.json ···· { }
三.作用域和内存空间的区别:
作用域是函数在执行的时候产生的fn()
函数在执行的时候首先会开辟一个新的内存空间叫栈内存(环境或作用域)
数据类型在赋值的时候回开辟一个新的内存空间 叫堆内存(存放代码块的)
相同点:二者都会形成一个内存地址
函数的封装:
优势可以批量生产,减少冗余代码,提高代码的重复利用率(高密度低耦合),没有继承和多态
四.例识别:
构造函数中的属性都是私有的,各个实例对象之间没有私有属性。为了实例对象拥有公共属性,所以js使用prototype(原型)这个属性,属性值是一个对象,我们可以把公共的属性放在prototype上。
原型分析:
1.每个函数数据类型(普通函数,类)都有一个prototype,并且这个属性是一个对象属性。
2.每个prototype上都有一个construction属性,并且这个属性值是当前函数或者类本身。
3.每个对象数据类型(实例,普通对象,prototype) 都天生具有一个__proto__的属性值,他的属性值是当前实例所属类的原型。
原型链:
duixiang.shuxing的时候,首先这个属性不是私有的,私有的就直接使用,如果私有的属性没有,就找共有的,共有的有就使用,没有的就按照__proto__的类上有没有,直到找到基类Object。如果Object没有就undefined,这种查找机制叫做原型链。
11.1 js中级,数据类型、数据储存方式、作用域内存空间的区别以及例识别。的更多相关文章
- Android下的数据储存方式(三)
Android下最好的数据储存方式:关系型数据库sqlite. 数据库的创建:使用SqliteOpenHelper类 结合SqliteOpenHelper类和SQLiteDatabase类的帮 ...
- 关系型数据库与HBase的数据储存方式差别
现在Bigtable型(列族)数据库应用越来越广,功能也非常强大. 可是非常多人还是把它当做关系型数据库在使用,用原来关系型数据库的思维建表.存储.查询. 本文以hbase举例讲述数据模式的变化. 传 ...
- Android下的数据储存方式
安卓系统默认提供了一下几种数据储存的方式: Shared Preferences 内部储存 外部储存 SQLite数据库 保存到网络服务器 使用Shared Preferences ...
- Android下的数据储存方式( 二)
在上一篇文章中我们介绍了SharedPreferences的使用方法. 今天我们继续介绍另一种储存数据的方式:使用内部储存和外部储存 每一个Android设备都拥有两个数据储存区域:外部储存和外部储存 ...
- JS高阶---数据、变量、内存
[一]基础 (1)什么是数据? 存储在内存里 代表特定信息 本质为0101,二进制数据 (2)什么是内存? 内存条通电后产生的可存储数据的空间(临时的) 拓展: 1.2种数据 2.内存分类--栈和堆 ...
- Android SQLite数据储存方式
SQLiteOpenHelper 类 用SQLiteOpenHelper 类中的 getWritableDatabase()和getReadableDatabase()方法可以获得数据库的引用. 为了 ...
- angular js 指令的数据传递 及作用域数据绑定
<div my-directive my-url="http://google.com" my-link-text="Click me to go to Googl ...
- Java学习日记-2.3 基本数据类型和对象所占内存空间大小
转自:http://www.newsmth.net/nForum/#!article/Java/324167
- wemall app商城源码Android数据的SharedPreferences储存方式
wemall-mobile是基于WeMall的Android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享wemall app商城源码Android数据 ...
随机推荐
- 使用PermissionsDispatcher轻松解决Android权限问题
之前也处理过6.0后的权限问题,直接处理很是麻烦.这次在github上搜到了关于权限星数最多的PermissionsDispatcher这个库,几个注释完美解决权限问题. 第一步 添加各种注释 1.@ ...
- Mysql的命令
学习mysql命令必须先安装哦:安装教程 1.doc连接Mysql 格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL.首先打开DOS窗口,然后进入目录mysql ...
- Mac系统操作指南
OSX 采用的Unix文件系统,所有文件都挂在跟目录“ /” 下面,所以不在要有Windows 下的盘符概念.比如什么“C:”你在桌面上看到的硬盘都挂在 /Volumes 下. 比如接上个叫做“XX” ...
- malloc()函数,calloc()函数,realloc()函数,free()函数
malloc()函数 头文件:#include <stdlib.h> malloc() 函数用来动态地分配内存空间,其原型为:void* malloc (size_t size); [参数 ...
- C#中的特殊数据类型
一.c#中的特殊数据类型 C#中特殊数据类型有class类型.结构类型.数组类型.枚举类型.集合类型.委托类型.事件.Lambda表达式.接口类型. 1.class类型 1.1类定义 class St ...
- 实战:Nginx如何让用户通过用户名和密码认证访问WEB站点
有时我们会有这么一种需求,就是你的网站并不想提供一个公共的访问或者某些页面不希望公开,我们希望的是某些特定的客户端可以访问.那么我们可以在访问时要求进行身份认证,就如给你自己的家门加一把锁,以拒绝那些 ...
- 伪数组 arguments
arguments代表的是实参.有个讲究的地方是:arguments只在函数中使用. (1)返回函数实参的个数:arguments.length 例子: fn(2,4); fn(2,4,6); fn( ...
- Python学习---抽屉框架分析[小评论分析]0315
注: 此处的小评论涉及数据库操作 初级小评论代码 settings.py INSTALLED_APPS = [ ... 'app01', # 注册app ] STATICFILES_DIRS = (o ...
- Linux下的Mysql备份/恢复
数据库逻辑备份 逻辑备份:将数据库的数据以逻辑的SQL语句的方式导出 查看帮助 mysqldump --help 0.数据库开启状态 1.备份某个特定的库: mysqldump -uroot -pro ...
- ASP.NET Core 使用 SQLite 教程,EF SQLite教程,修改模型更新数据库,适合初学者看懂详细、简单教程
SQLIte 操作方便,简单小巧,这里笔者就不再过多介绍,感兴趣可以到以下博文 https://blog.csdn.net/qq_31930499/article/details/80420246 文 ...