? 关注公众号【哪吒编程】,回复1024,获取Java学习路线思维导图、大厂面试真题、加入万粉计划交流群、一起学习进步
目录
一、对象
1、对象的分类
(1)内建对象
(2)宿主对象
(3)自定义对象
由开发人员自己创建的对象
2、创建对象
使用new关键字调用的函数,是构造函数constructor,构造函数是专门用来创建对象的函数,使用typeof检查一个对象时,会返回object。
3、属性
语法:对象.属性名 = 属性值;
4、读取对象中的属性
语法:对象.属性名
5、修改对象的属性值
语法:对象.属性名 = 新值
6、删除对象的属性
语法:delete 对象.属性名
二、数据类型存储位置
1、基本数据类型
- String
- Number
- Boolean
- Null
- Undefined
2、引用数据类型
Object
3、类型存储位置
JavaScript中的变量都是保存到栈内存中的,基本数据类型的值直接在栈内存中存储,值与值之间是独立存在,修改一个变量不会影响其他的变量。
对象是保存到堆内存中的,每创建一个新的对象,就会在堆内存中开辟出一个新的空间,而变量保存的是对象的内存地址(对象的引用),如果两个变量保存的是同一个对象引用,当一个通过一个变量修改属性时,另一个也会受到影响。
三、对象的比较
当比较两个基本数据类型的值时,就是比较值。
而比较两个引用数据类型时,它是比较的对象的内存地址,
如果两个对象是一摸一样的,但是地址不同,它也会返回false。
四、对象字面量
1、使用对象字面量,可以在创建对象时,直接指定对象中的属性
2、语法
{属性名:属性值,属性名:属性值…}
对象字面量的属性名可以加引号也可以不加,建议不加,如果要使用一些特殊的名字,则必须加引号
var obj = {
name:"哪吒", age:29, gender:"男", test:{
name:"比比东"} };
五、函数 function
1、什么是函数
- 函数也是一个对象
- 函数中可以封装一些代码,在需要时可以执行这些代码
- 函数中可以保存一些代码在需要的时候调用
- 使用typeof检查一个函数对象时,会返回function
2、函数的执行
- 封装到函数中的代码不会立即执行
- 函数中的代码会在函数调用的时候执行
- 调用函数语法:函数对象()
- 当调用函数时,函数中封装的代码会按照顺序执行
3、语法
function 函数名([形参1,形参2...形参N]){
语句... }
4、函数的参数
(1)形参
(2)实参
在调用函数时,可以在()中指定实参(实际参数);
实参将会赋值给函数中对应的形参;
调用函数时解析器不会检查实参的类型,所以要注意,是否有可能会接收到非法的参数,如果有可能则需要对参数进行类型的检查,函数的实参可以是任意的数据类型。
调用函数时,解析器也不会检查实参的数量,多余实参不会被赋值,如果实参的数量少于形参的数量,则没有对应实参的形参将是undefined。
5、返回值return
function sum(a , b , c){
var d = a + b + c; return d; }
6、对象中的函数
如果一个函数作为一个对象的属性保存,那么我们称这个函数时这个对象的方法,调用这个函数就说调用对象的方法(method)。
var obj = {
name:"哪吒", age:28, sayName:function(){
console.log(obj.name); } };
7、遍历对象中的属性
for(var 变量 in 对象){
}
六、作用域
作用域指一个变量的作用的范围。
在JS中一共有两种作用域:
1、全局作用域
在全局作用域中:
2、函数作用域
在函数中要访问全局变量可以使用window对象。
在函数作用域也有声明提前的特性,使用var关键字声明的变量,会在函数中所有的代码执行之前被声明,函数声明也会在函数中所有的代码执行之前执行。
function fun(){
fun1(); //console.log(a); var a = 29; function fun1(){
alert("I'm fun1"); } }

关注公众号,回复1024,获取Java学习路线思维导图、加入万粉计划交流群
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/204632.html原文链接:https://javaforall.net
