javascript学习总结五

本文深入探讨JavaScript语言特性、浏览器执行机制、事件驱动、类与对象、内存分配等核心概念,并介绍如何合理布局脚本代码、利用事件处理实现交互功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.javascript是解释型语言,所以是顺序执行的(不同于编译语言),跟放置的位置有关

2.null是空值,undefine是自从创建后即没有赋值

3.javascript是让浏览器执行命令

 

4.

9==“9”  //true

9===“9” //false

 

5.位移运算符<<(相当于把二进制数变大2倍  , >>(相当于把二进制数缩小2倍)

6.火狐FireFox (F12是进行编译)

7.  javascript一般放置于head处,或者body处 ; css可以放置于任何元素处

8.  javascript 的类对象其实就是函数对象

9.方法一般不要超过30行

10.  OOP中谁调用我谁就是this,比如:

//定义类person

function Person( )

{

 this.name="zhangsan";

this.fuc=function(){

document.wirte(this.name);

}

}

//定义对象

personA=new Person();

var personB=personA;

personB.fuc(); //结果this.name==widnow.name,因为此时personB.fuc()是在窗口下被window调用的,所以this是window

 

11.JS中的this

a.谁调用我谁就是该方法的this

b.this在方法外部使用时,相当于window

c.类内部this可以省略

d.JS中的全局变量就相当于window(该html窗口调用该js)中的一个动态属性//整个window就是一个对象

e.window中的所有函数都是由对象来调用的

 

12.访问修饰符

a.this在JS中只能访问公开的属性

b.私有成员在类内部不能使用this调用

eg:

//person类

 function Person(){

var sexA="women";  //私有属性

var fucA=function(){  //私有函数

};

this.sexB="women";  //公有属性

this.funB=function(){ //公有函数

};

}

 

13.JS类内存分配

 

14.JS类内部定义的方法和属性相当于类初始化(所有对象都有),而类外部定有的方法和属性,只有该对象拥有--->谁用,谁就在外部动态添加方法和属性

15.类的原型和字典很相似,可以使用字典的键值对的方式去访问对象的属性和方法

16.Math对象: eval方法和mel很相似,可以执行表达式 //window.eval 相当于html的窗口对象(是个对象)

17.JS支持可变参数,eg:

function fuc( ){

Argument[0] //使用内置的Argument[]参数数组来动态取得参数

}

 

18.  if( object.constructor==string)  //可以使用.constructor来进行类型判断

19.JS的事件驱动机制,可分为:系统后台调用、手动调用

*事件是作用在元素上的,eg:

<html>
    <head>
        <link href="JSClassDemo.css" type="text/css" rel="stylesheet"></link>
        <script language="javascript" type="text/javascript" src="JSClassDemo.js"></script>
    </head>
    <body onload="load();">
        <div id="divTest" onclick='displayCurrentMousePosition(this);'>   //this是指div这个元素本身
            这是可以改变颜色的文字
        </div>
        <input type="text" onkeyPress="keyCue(event);" ></input>
        <input type="button" onclick="changeFontColor(this);" value="red" ></input>  //event是给事件处理函数传入的事件信息
    </body>
</html>
 

20. Js中不存重载,同名函数-->就近原则使用

21. <input type="text/javascript" ... onkeypress=fun(参数可以使this,或者event都可)...>

22.userAgent --->用户说明属性(浏览器)

23. <div id="hero" onclick= "fun(由window调用,所以this默认为window,不用指定this,默认就是传入的) ;" >

24、<div id="hero" onclick="fun(this);" > //this 是指的的元素本身

26.  window.isNoN(txt.value) //判断是否为数字

27.  parentInt(txtSort.value) //将txt(string)转换为int

28. funtion $(name) {

return document.getElementById(name) }  //可以使用$来作为函数名,使用方便

29. row[0].cell[0].innerHtml  //空格中的html

30.  Html语言可以被解释,如不能解释就为字面意义

tmpAddcell.innerHtml="<input type=...>"   //innerHtml中的字可以被解释,所以可以执行该html

 

31. html节点:元素(使用document.getElementByID() 来获取节点) ,属性(直接使用如:document.anchor[0]来获取

32. 

a. js的对象相当于html文件解析后的全局对象:对象可以直接使用 document location

b. 元素没有属性的,就想办法使用style属性中的子属性来做

33. window-->浏览器打开时就生成了, history-->也就生成了,但location只有访问时才产生,eg:about:blank 就不产生location

34. openner --->创建窗口的主窗口的引用

35. window 是所有对象的根

36. js加入在head处就相当于可以在head处展开该js

37. js 对window界面元素的处理时,应将该js放置在body的末尾,(因为要先生成界面元素才能操作)

38. script可以放置在html的任何地方

39. jsscript 的函数操作的元素对象,需要在操作之前存在,放走就要将script放置在body之后,(等到所有元素生成之后)

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值