Javascript学习笔记(二)

Object

对象的理解

  对象就是拥有属性和方法的集合,比如人就是一个对象,他有身高、体重等属性,也有吃饭睡觉的动作和方法。最典型的就是一个函数也是对象。

对象的分类

  • 内建对象:ES标准中定义中的对象
  • 宿主对象:有JS运行环境提供的对象
  • 自定义对象:由开发人员创建的对象
    JS中除了基本数据类型,其他的东西全部都是对象。

就是第三类需要我们去好好研究,第一二类都是给定的。


对象的创建、向对象添加属性、读取对象中的值

var obj=new Object(); new用于创建对象并赋值给obj
obj.name=xxx; 或者 obj[”name“]=xxx;//向对象中添加属性
delete +对象+属性; //删除对象的属性

下面有几点需要注意一下:

1.对象的属性名不强制要求遵守标识符的规范
2.[]中可以写变量
3.如果要特殊的属性名不能用.来操作 对象[“属性名”]如:123
4。属性值 可以是任意数据类新甚至也可能是一个对象
5.in 通过该运算符可以检查是否由这个属性 属性+in+对象

for(var n in obj){
					console.log(obj[n]);
				}
//用于检查对象中的属性,每次执行,会将对象中的一个属性的名字赋值给变量

栈内存和堆内存

js中基本数据类型是保存在栈内存,对象是保存在堆内存中,栈内存是保留对象的内存地址,所以其他数据类型是相互独立的不相互影响。


作用域

  1. 全局作用域

在页面打开时创建,在页面关闭时销毁
全局作用域有一个对象window可以通过window调用属性

  1. 函数作用域

调用时创建函数作用域,函数执行完毕,函数作用域销毁

申明提前

使用var函数申明的变量会在所有代码执行之前被声明(但不会赋值),但若不是var申明的则不会有申明提前。函数作用域也有申明提前的这种现象。

函数申明

function 函数名([形参][]-----){
  语句};function(){})();//立即执行函数

this

解析器每次调函数时会定义一个隐含的参数,这个隐含的参数就是this指向的是一个对象,函数上下文对象,调用方式不同指向不同的对象
1.

这里是引用

以函数的的形式调用时this是window
2. 以方法(.)的形式调用this谁调用this指向谁

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值