学习笔记---JavaScript基础
学习笔记---JavaScript基础
2010年12月02日
1. JavaScrip数据类型:
值类型PrimitiveValue(栈中):
a. undefined类型(值为undefined表示未定义, undefined实际上是从null派生出来的, 在javascript中他们是相等的)、
b. null类型(已定义且值为null, 表示空引用, 即可用于引用类型, 也可以用于值类型. null只是个标号, 表示什么都没有, 类似于生活中的"无")、
c. boolean(false、0、null、undefined、NaN均表示false, 其他为true; Infinity亦为true)、
d. number(1,1.0,..., 8进制以0开头, 16进制以0x开头)、
e. string(栈上, 无论单引号还是双引号都表示串)
f. 特殊的数值: Infinity(无穷大)、NaN(非数字)、Numer.MAX_VALUE(最大值)、Number.MIN_VALUE(最小值)、Number.POSITIVE_INFINITY(正无穷)、Number.NEGATIVE_INFINITY(负无穷)
引用类型ReferenceValue(堆中):
object(函数是一种特殊的对象类型)
2. 开启脚本调试: Internet工具 -- 高级 -- 去掉禁用脚本调试的勾即可
3. 变量名: 必须是非关键字的字符、下划线、数字、$, 但是首字符不能是数字
4. JSON(JavaScript Object Notation): 即JavaScript对象标记法, 用来在javascrip中创建对象,如: var obj ={}; 其中, javascript中的对象可以动态的增加或删除, 可以认为对象内部有个字典, 键位对象成员名, 值为成员的value;
5. Array-Like: JavaScript中可以使用类似数组的方式来访问对象, 因为单独的数字不能作为属性名称, 可以通过"0":100(对象内部)或 array["0"]=100 或array[0]=100赋值, 之后在for循环中, 可以直接用i做下标
6. 函数: a. 函数可以无返回类型, 直接return即可 b. 函数的参数也不需要指定类型, 直接写参数名即可(最好还是写上有意义的符号做参数); 甚至可以不定义任何参数, 在调用时直接传递参数即可(通过arguments获得参数, length属性表示实际传递的参数个数)
7. 匿名函数: (function(){alert("Hello");})(); 脚本块执行完毕后, 自动加载.
8. ★JavaScript脚本块执行顺序: a. 脚本块按先后顺序执行, 所以只能后便的脚本块调用前面脚本块中的函数. b. 同一脚本块中, JavaScript会先识别函数, 之后才会按照代码依次执行, 因此同名的函数会被覆盖, 不会出现C#中的重载.
9. 类函数(构造函数)和new配合用来创造新的对象实例, 可以通过this获得刚创建的对象, 如果不用new的话, this获得是全局对象window, 而对象的成员也是创建在window上的
10.数组[]: 可使用join()方法连接数组的各个数据元素; 若要实现倒序排序, 需要在sort()中放置个函数对象; 也可以用数组当作堆栈和队列使用(pop和shift、push和unshift)
11.日期处理: 当前日期new date(); 年份getFullYear(); 月份getMonth()+1; 天getDate(); 星期几getDay()
12.字符串处理: 常用的字符串对象成员:
length 串长
charAt() 根据下表找字符
substring() 取子串, 第一个参数为起始位置, 第二个参数个数, 正数向右数, 负数向左数
slice() 取字串, 低格参数为起始位置, 第二个参数为个数, 正数向右数, 负数从末尾向左数
concat() 连接子串, 通常用+
toLowerCase() 变小写
toUpperCase() 变大写
indexOf() 查找
13. delete用于动态删除成员、void通常用于避免输出不应该的值:如:window.open('about:blank')返回一个对象, 如果不加void则会使父页面变成[object], 加上void后返回undefined(无效值), 不会再父页面中显示
14. ★&&和||: 将a或b转换为boolean类型, 对于a&&b: 若a为false, 则返回a, 否则返回b; a||b: 若a为true则返回a, 否则返回b(实际上就是&&和||提前结束的情况). 该操作对于null、NaN、undefined同样有效.
15. ==和===、!=和!==: ==和!=表示数值相等, ===和!==表示引用相等
16. 异常处理: BOM中包含的onerror错误事件和try..catch...finally结构两种异常处理方式.
window.onerror = function(message,url,line){}, 可以定义异常出现时error事件的处理方法, 且必须写在js语句块的第1行. onerror对象提供了三种信息(由error事件的参数自动传递给处理函数): 错误信息、发生错误的文件的url、错误的行号.
Javascript中的所有异常对象派生自Error基类, 该基类有两个属性: name(错误类型)和message(错误信息).
catch子句中捕获的是error的子类: EvalError(eval中的错误)、SyntaxError(eval中的错误语法)、RangeError(数字超范围)、ReferenceError(非法的引用)、TypeError(变量类型非预期)、URIError(encodeURE()或decodeURI()函数中出错).
throw用于抛出异常(throw error_object), 也可以抛出一个error对象, 该对象的构造函数只有一个参数--错误信息.
17. BOM(Browser Object Model, 浏览器对象模型): 表示当前浏览器窗口对象.
顶级对象的常用方法: alert用于在提示窗口中显示信息.
confirm显示一个确认窗口.
prompt获取用户的输入.
open打开新的页面, 该方法返回新窗口的引用供父窗口使用, 同时也可以通过window.opener得到父窗口的引用.
close关闭当前窗口.
setInterval设定定时任务
clearInterval取消定时任务
setTimeout设置延时执行任务
常见属性: event事件对象, event常用属性有returnValue(是否允许事件处理继续进行, false为停止继续操作)、srcElement(触发事件的事件源对象)和attachEvent("onclick",function(){...});
location当前访问的资源地址
opener打开当前窗口的窗口(即父窗口)
document网页内容的dom对象(内存中的, document object model)
//示例代码:
(请您对文章做出评价)
学习笔记---HttpApplication处理管道
学习笔记---Javascript原型对象、this的5钟用法、原型继承、Caller和Callee的使用
posted on 2010-12-02 22:39 我的.Net成长笔记――中美爱梯学习经历
注册用户登录后才能发表评论,请 张朝阳:我是温和善良的企业家
美科学家揭秘宇宙中恒星总数 是预想的三倍
IBM发布从惠普和Oracle抢夺客户的详细资料
20个值得收藏的网页设计开放课件
传Twitter新一轮融资估值达30亿美元
[/b]搭建App Engine完美开发环境
Google工程师多图详解Android系统架