首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【学习笔记】先行者课程0109-rotate3d_变量、堆、栈

【学习笔记】先行者课程0109-rotate3d_变量、堆、栈

作者头像
web前端教室
发布2018-02-07 14:58:46
4890
发布2018-02-07 14:58:46
举报
文章被收录于专栏:web前端教室web前端教室

一,通过一个小例子,来学习一下css3 3d变换;

二,开始讲js,先从js变量开始说起,

说一下js的变量与内存中的栈的关系,

还有数据的“值传递”、“引用传递”;

<!-- -->

rotateX,rotateY

// rotate [ˈroʊteɪt]

--定义沿 X 轴的 3D 旋转。

--定义沿 Y 轴的 3D 旋转。

<!-- -->

JavaScript 是脚本语言,

它是在浏览器中运行的,是一行一行往下读取,

如果某一行有bug,那么整个js将停止运行。

js语言它的官方名称:ECMA-262,是它的官方标准名称。

<!-- -->

变量,一般学js,都是先从它开始学起,

声明变量,使用var关键字,

var xx = 123;

xx这个变量,它就是个抽象概念上的容器,

它里面保存的数据,是123

<!-- -->

在js当中,有五种基本类型:

Undefined , Null , Boolean , Number , String,

它们都是直接保存的“值”。

与之相对应的是“引用类型”,典型的就是function,函数。

<!-- -->

var aa = 123;

这是我们声明一个变量aa,

我们在访问的时候,是直接在访问它的栈中的值。

变量的值,是不可以改变的。每次你修改了某个变量的值,

其实都是在内存当中重新“开了”一片内存空间,

然后把原来的变量,指向了新的这个内存的空间的地址。

<!-- -->

var abc = function(){
 this.a = 123;
 this.b = 456;
 this.c = [{},{},{}...{}]
 ...
 ..
}

这是一个名为abc的函数,它里面可以保存很多的值。

也就是说,函数的值的大小是不固定的,所以只能按引用访问。

所以不能直接把“引用类型”的值,直接放在栈内存里。

所以,引用类型里所保存的值,只能放在堆内存中,

然后在栈中放着的是,访问堆内存的地址。

然后,当我们想要在引用类型中获取数据的时候,

1、先从栈中获取地址;

2、根据地址,从堆中获取对应的值。

这叫什么?

“按引用访问”

这节课的内容,涉及到js内存中的堆和栈,没有办法演示,

所以没有对应的demo。

这节内容就这样,

下一节讲 function、对象、词法分析。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-01-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 web前端教室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档