Javascript:基于对象与事件驱动的脚本语言,主要用于客户端

  • 特点:

    • 交互性:信息动态交互。
    • 安全性:不能访问本地硬盘。
    • 跨平台性:只要有浏览器就支持Javascript,与平台无关。
  • Javascript与HTML结合方式:
    • <script type="text/javascript">...</script>
    • <script type="text/javascript" src="....js文件">....代码不被执行</script>
  • 变量:
var x = 4;(无明显类型)    3140/1000*1000=3140
typeof(123) = number    "12"+1="121"
typeof("abc") = string   "12"-1="1"
typeof(3.45) = number    "99"-1=NaN(非法字符)
  • 运算符与语句:while(){}  if(){}else{}  switch(){}
  • 写在html中:document.write("");  换行:document.write("<br />");
  • 函数:  function show(){... return ...;}。函数可以内部得到实参数组,arguments[...],并带有length属性。var sum = show;无括号表示sum函数主体
    • 动态函数:var func = new function("x,y", "sum=x+y;return sum;");
    • 匿名函数:var func = function(){alert("over");} 一般用于事件的调用。
  • 变量的作用域:只有定义在函数内的变量才是局部变量,其他都全局。for(var i=0;i<5;i++){...}中的i也是全局变量。
  • 数组:arr = [3,5,8]
    • 特点:

      • 容器用于存储数据
      • 长度是可变的
      • 元素类型是任意的
    • 字符串可以直接比较
    • var arr2=new Array(2); --> 两个数组
    • var arr2 = new Array(3,9) --> 两个数组,内容是3和9
  • 自己写了一个function,如String比较大小,找最大值getMax()函数,想添加到工具类中,则可以:

    Array.prototype.max = getMax();var Array = [3,5,8];

    var ret = Array.max();document.write(ret);....

    也可以直接Array.prototype.max = function(){...;return;};

    也可以使用.js文件,在想使用的.html中导入.js文件即可,如trim()方法。

String.prototype.trim = function(){
var start = 0,end = this.length - 1;
while(start <= end && this.charAt(start)==""){
start++;
}
while(start <=end && this.charAt(end)==""){
end--;
}
return this.substring(start,end);
};
  • Javascript面向对象:
function Person(x,y){  //相当于定义类
this.age = x;
this.name = y;
this.show = function(){....};
} var p = new Person(...,...);
p.number = xxx;  //任意加入属性成员

  Person类也能加入新功能,Person.prototype.toString = function(){....};

  • Javascript特有语句:

    • p1.set();  -->  with(p1){

       p1.get();  -->    set();get();}

    • for(变量 in 对象) {}  -->  用于遍历对象与数组,如for(x in p1) {alert(x+":"+p1[x]);}可以遍历输出属性与方法。

              

最新文章

  1. codeforces 360 E - The Values You Can Make
  2. 【Python】个人所得税
  3. Windows服务二:测试新建的服务、调试Windows服务
  4. UISwitch属性
  5. bzoj2679:[Usaco2012 Open]Balanced Cow Subsets
  6. was unable to start within 45 seconds. If the server requires more time, try increasing the timeout
  7. 几个简单的windows API
  8. Hdoj 1312.Red and Black 题解
  9. html块、含样式的标签
  10. RHEL5.5的安装文档
  11. 一线互联网常见的 14 个 Java 面试题,你颤抖了吗程序员
  12. vue之后台管理系统遇到的几个痛点
  13. rsync推送备份服务器(Linux)
  14. wkhtmltopdf+itext实现html生成pdf文件的打印下载(适用于linux及windows)
  15. linux ls文件颜色和底色设置
  16. QLayout布局时自动占满全部的空间。
  17. Sublime 取消每次自动更新弹窗设置
  18. 20135302魏静静——linux课程第六周实验及总结
  19. 02 - Unit01:服务器返回数据的json处理+搭建项目环境
  20. Netty(RPC高性能之道)原理剖析

热门文章

  1. 《c程序设计语言》读书笔记--每行一个单词打印输入的字符,除去空符
  2. MTK6577 Android源代码目录
  3. [HDOJ2512]一卡通大冒险(DP)
  4. php-redis中文文档(转)
  5. 无锁编程(四) - CAS与ABA问题
  6. z-index 用法
  7. [ionic开源项目教程] - 第3讲 左右滑动菜单的实现(使用Tabs和SlideBox)
  8. (转载)C语言 数组与指针的区别
  9. 如何拷贝CMD命令行文本到粘贴板
  10. linux vim 配置文件(高亮+自动缩进+行号+折叠+优化)