web学习记录-JS-4

&nbsp  输入空格 document.write(&nbsp)

质数练习

break 结束循环  continue 跳过当次循环

 对象  String  Number  Boolean  Null  Underfined  Object

内建对象  String  Number  Boolean  Null  Underfined  Object

宿主对象   BOM  DOM  console.log()  document.write()

自建对象(主)  var obj = new Object()

new调用函数,是构造函数constructor

添加属性  对象.属性名 = 属性值

读取属性  console.log(对象.属性名)

修改属性值  对象.属性名 = 新值

扫描二维码关注公众号,回复: 4795235 查看本文章

删除属性  delete 对象.属性名

特殊属性名  obj["123"]=属性名  console.log(["123"])  [ ]可以传递变量的值

属性值可以是任意值,可以是个对象  obj1.obj2.属性名  也可以是个函数  称这个函数是该对象的方法

in  “属性名” in 对象  有就返回true,没有返回false

引用数据类型  Object

变量保存在栈内存  对象保存在堆内存里,变量保存的是内存地址

比较基本数据类型是比值,比较引用数据类型是比内存地址

对象字面量 

var obj  = {属性名:属性值,属性名:属性值……};

函数  也是一个对象  可封装一些功能,可在需要时候调用

var fun = new Funciton();

调用函数   函数对象();

函数声明创建函数  function 函数名([形参1,形参2……形参N]){}

函数表达式  var 函数名= function([形参1,形参2……形参N]){}

函数的参数  在函数()中来指定多个形参 相当于在函数内声明对应的变量  调用函数式,()内指定实参,相对赋值给函数形参,多余的实参不会被赋值,少的话,没有实参的形参会被赋值成underfined

返回值  return 值;作为函数执行结果返回,之后的语句不会被执行  

实参可以是对象,实参过多是,可以创建对象封装实参

实参也可以是一个函数    函数是函数对象  函数()是返回值

return 可以是任何值  是对象,是函数

立即执行函数  (函数)();

枚举对象中的属性  for ……in 语句  for(var 变量 in 对象){ }  for(var n in obj){console.log("属性名:"+n);console.log(“属性名”+obj[n];)}

作用域(Scope)  一个变量的作用范围  

全局作用域  编写在script标签中的JS代码都在全局作用域  页面打开创建 关闭销毁  都是全局变量  在页面的任意部分都能访问到  全局对象window,代表浏览器窗口,创建的变量作为window对象的属性保存

变量的声明提前  使用var声明变量,会在代码执行之前被声明  

函数的声明提前  使用函数声明形式创建函数 function 函数(){}会在代码执行前就被创建    var fun2 =function(){}不会被提前创建

函数作用域  调用函数创建作用域,执行完毕销毁,每调用一次创建一个新的作用域,互相独立  可以访问全局变量  全局中无法访问到函数作用域的变量  自身中有变量子用自身,没有则在上一级作用域中寻找,直到全局,没有则报错  也有声明提前

debug  网页编辑器中中断运行

this  解析器调用函数每次都会像函数传进一个隐藏函数,this 指向的是一个对象  

根据调用函数的方式不同,this会指向不同的对象

1,以函数形式调用,this永远是window 2,以方式的形式调用,this就是调用方法的那个函数

猜你喜欢

转载自www.cnblogs.com/xihuanjiuquqiqang/p/10226863.html