值传递与引用传递(红皮书2/10)

在这里插入图片描述

95年的时候,艾克,在网景打工的时候,为了应付事,写的js
三个组成部分:ECMAScript+DOM+BOM,ECMAScript是js的核心,介绍了语法、关键字、操作符等等,DOM是文档对象,封装了,访问和操作文档内容的方法与接口,BOM是浏览器对象,封装了与浏览器交互的方法与接口

<script>标签src属性,值是所要引入的外部文件的路径,type语言的类型,默认是text-javascript,位置是head和body里面
<script src=”url”></script>
也可以直接在里面写js代码
<script>console.log(“你好”)</script>

在这里插入图片描述

1.Js的ECMAScript部分包括语法、数据类型、流程控制语句、函数。
2.很多东西跟C语言基础差不多,相信你的大学也有这么一门叫做计算机基础的课。
3.Js特别的地方是undefined数据类型、Number取值可以是NaN、相等运算符不仅有==还有===,以及函数不能重载。

在这里插入图片描述

var num1 = 5;
变量是个啥?这个num1就是个变量,它现在被赋值为5,一会儿也可以改成6
在他出生的一刻,他的父母已经给他买好了房子,而这个5,就是童养媳,当然,你也可以先声明后赋值:
Var num1;
Num1=5;
在js中声明变量的方式不止var这一种,还有let和const,以及大别墅function,转为头等公民设计,详情强烈推荐去看阮一峰老师讲的es6,百度一下就能搜到

有理想的变量总是想去远方闯一闯,于是就有了传参的问题:值传递和引用传递。举个不太现实的例子,你是比基尼海滩的土豪,非常的豪横。突然有一天,你非常想吃汉堡,于是打电话给蟹堡王。蟹老板一听到是你($)的声音,十分热情,并决定亲自给你送过来。他带着汉堡来了(把蟹老板和汉堡的整体看成参数),你这个时候说汉堡能夹痞老板吗?他说可以,于是把痞老板绑来,加进了你的汉堡里。于是你的汉堡是痞老板馅的,而别的顾客买到的不是,这就叫值传递。你跟老螃蟹说,以后能不能出一款加痞老板的汉堡,不仅我买的是加痞老板的,大家去买也都加痞老板。老螃蟹固然也很想,但是蟹堡王的秘方不在这里啊,在这说的再好,那店里还不是海绵对着秘方做事。所以说,下次传参,老板没必要来,秘方和汉堡一起来就行了,秘方传过来,跟海绵开视频。这边改秘方,那边的汉堡立刻就变样了,这就叫引用传递

作用域有全局作用域,函数作用域,块级作用域和eval作用域,它们就像是娱乐圈、技术圈、游戏圈…只有同圈的才识货

垃圾清理有两种策略,标记清除和引用计数。拆迁的拆字见过没,画上就拆,就是标记清除。而引用计数就是超时的货物出售清单,卖一个就+1,如果有个货物这周总数是0,它没了。原来的地方空出来,看着摆点别的。然而有一种情况例外,在程序中叫循环引用,a方法调用b方法,b方法调用a方法,然而跟本没人调用这俩方法。换句话说,程序的运行跟他俩没关系。就像是两个拳击教练,全职指导对方打拳。总之大家在赛场上,永远看不到他俩的影子。又好比连锁超市,这边撤的货进了另一家,账面上是这边出了很多货,实际上,这款商品根本没人买。

以上就是红皮书的前四章的内容,也就是这个系列的第二篇。在这里插入图片描述在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/jvhbi/article/details/107578775