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

一,通过一个小例子,来学习一下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、对象、词法分析。

原文发布于微信公众号 - web前端教室(webfeel)

原文发表时间:2018-01-09

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Python专栏

Python 面试问答 Top 25

Python 是一种解释型,交互式,面向对象的高级编程语言。和别的一些使用标点符号的语言不同,Python使用了大量的英语单词作为关键字,因而具有很好的可读性。...

1213
来自专栏老九学堂

这是谁做的作业!C语言编码太不规范了...

1) 程序应采用缩进风格编写,每层缩进使用一个制表位(TAB),类定义、方法都应顶格书写;

1632
来自专栏Python爱好者

Android面试之Java基础

1363
来自专栏yang0range

Java的面试基础题(二)

1)特点:存储对象;长度可变;存储对象的类型可不同 2)Collection (1)List:有序的;元素可重复,有索引 (add(index, elem...

1752
来自专栏用户2442861的专栏

STL源码剖析-hash_map / hash_multimap

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/haluoluo211/article/d...

1334
来自专栏编程

Python基础—让你规范Python语言的使用

群内不定时分享干货,包括最新的python企业案例学习资料和零基础入门教程,欢迎初学和进阶中的小伙伴入群学习交流 ? Lint 定义: pylint是一个在Py...

2118
来自专栏编程

《5》python字符串和编码

「5」python字符串和编码 ? 字符编码 最早只有127个字符被编码到计算机里,也就是大小写英文字母、数字和一些符号,这个编码表被称为ASCII编码,比如大...

19710
来自专栏Python私房菜

你所不知道的Python | 字符串连接的秘密

字符串连接,就是将2个或以上的字符串合并成一个,看上去连接字符串是一个非常基础的小问题,但是在Python中,我们可以用多种方式实现字符串的连接,稍有不慎就有可...

1495
来自专栏python百例

117-可变与不可变对象的效率

python是一种解释型的语言,执行效率要比C这样的编译型语言差得多,但是也应该注意它的效率。 python的各种数据类型,按更新模型可以分为可变类型(如列表...

801
来自专栏用户2442861的专栏

Python yield 使用浅析

您可能听说过,带有 yield 的函数在 Python 中被称之为 generator(生成器),何谓 generator ?

871

扫码关注云+社区

领取腾讯云代金券