JS高级程序设计笔记
程序员文章站
2022-05-18 22:03:05
1. 第三章 1. 参数 1. ES中的参数在内部是用一个数组来表示的 1. 数组包含哪些参数并不关心 2. 函数体内可以通过arguments对象(所以并不是Array实例)来访问这个参数数组 3. 1. 50 arguments的值与对应命名参数的值保持同步 2. NaN 1. argument ......
-
第三章
-
参数
-
es中的参数在内部是用一个数组来表示的
数组包含哪些参数并不关心
函数体内可以通过arguments对象(所以并不是array实例)来访问这个参数数组
-
function doadd(num1, num2) { arguments[1] = 10; alert(arguments[0] + num2); } doadd(10); // nan doadd(40, 50) // 50
50 ---- arguments的值与对应命名参数的值保持同步
-
nan
arguments对象的长度由传入的参数(实参)个数决定,不是由形参个数决定的
没有传递值的命名参数将被赋予undefined值
- es中所有参数传递的都是值,不可能通过引用传递参数
-
重载
重载:一个函数写两个定义,只要两个定义的签名(参数类型和数量)不同即可。
- es中,没有重载。后定义的函数会覆盖前一个定义
-
-
-
变量、定义域和内存
-
基本类型和引用类型的值
-
基本类型的值是按值访问,引用类型的值按引用访问
引用类型的值是保存在内存中的对象。js不允许直接操作对象的内存空间。
所以操作对象时,操作的是对象的引用。复制保存着对象的某个变量时,操作的是对象的引用;为对象添加属性时,操作的是实际的对象。。。。
* {{23.png(uploading...)}}
-
动态的属性、静态的基本类型
- 可以给对象添加属性,但不能给基本类型添加属性
-
复制变量值
-
-
变量对象是一个与执行环境相关的特殊对象,存储着context中声明的以下内容:
变量(var,变量声明)
函数声明
函数形参
-
-
复制基本类型
var num1 = 5; var num2 = num1;
21.png
- 指针占几个字节要看地址总线的宽度,32位系统就是四个字节,所以无论是int型还是char型或者其他型,都是四个字节。
-
复制对象
-
- 执行环境和作用域
-
推荐阅读
-
浅谈idea live template高级知识_进阶(给方法,类,js方法添加注释)
-
JS学习笔记之贪吃蛇小游戏demo实例详解
-
JS学习笔记之闭包小案例分析
-
JS学习笔记之数组去重实现方法小结
-
JS学习笔记之原型链和利用原型实现继承详解
-
浅谈idea live template高级知识_进阶(给方法,类,js方法添加注释)
-
PHP 面向对象程序设计(oop)学习笔记(一) - 抽象类、对象接口、instanceof 和契约式编程
-
PHP 面向对象程序设计(oop)学习笔记 (四) - 异常处理类Exception
-
PHP 面向对象程序设计(oop)学习笔记(三) - 单例模式和工厂模式
-
PHP 面向对象程序设计(oop)学习笔记 (二) - 静态变量的属性和方法及延迟绑定