JavaScript:基于对象和事件的脚本语言

特点:

安全性:不允许直接访问本地硬盘,可做的就是信息的动态交互

跨平台性:只要可以解析JS的浏览器就可执行,与平台无关

JavaScript与Java的不同:

1、js是NetScape的产品,Java是SUN的产品

2、js是基于对象的,Java是面向对象的

3、js只需解释就可执行,Java需要先编译成字节码文件后再执行

4、js是弱类型语言,Java是强类型的

5、js是非严谨的,Java是严谨的

JavaScript与HTML代码的结合方式:任何代码要融入HTML代码中都是通过标签形式

1、将js代码存放在标签对<script></script>中,规范要求加type属性,以前是language属性

<script type=”text/javascript”> js代码 </script>

2、将js代码封装成js文件,提高复用性

<script type=”text/javascript” src=”1.js”></script>

变量通过关键字var定义,弱类型语言不需要指定具体数据类型

特殊常量:undefined  变量没有初始化时值就是它

数组:var arr = [1, 2, ‘abc’, 3.53]       数组长度是可变的,没有越界问题,其他值为undefined

var arr = new Array()           数组内可存放任意类型元素,推荐元素类型一致

var arr = [[1, 0, 3], [true, ‘abc’]]; 二维数组

js中的数组就相当于Java中的集合

函数:function 函数名(参数列表){js代码}

JavaScript函数没有重载形式,参数可随意传递,函数内部默认有一个arguments数组用来接收传入的参数,参数个数尽量保持一致

alert(函数名)可将函数内容打印出来,包括注释

动态函数:var fun = new Function(“x”, “y”, “var sum=x+y; return sum;”);   var a = fun(3,2);

函数的参数和函数体都可以通过字符串变量来动态修改

匿名函数:同Java,多用于事件处理

可以通过函数形式来模拟Java,创建对象

function Person()

{

alert(“person
init”);

}

var p = new Person();

上面会调用Person的方法

可以给p添加属性和方法

p.name = “张三”

p.age = 30;

p.eat = function(){}

引用name属性可用

p.name 或p[“name”]

也可像Java一样使用this来完成对象构造

简化操作的with语句和for…in语句

with用于确定对象的作用范围

with(对象){可直接调用对象的属性和方法,不用加对象名}

for…in语句用于遍历对象或数组

for((变量)s  in (学生对象)stu){alert(s)}此处打印出stu的属性,要获得属性值用stu[s]

for(x in array) alert(x)打印的是数组角标

JavaScript的内部对象:Object、String、Array、Math……

String:长度为length属性,不是方法

方法有:toUpperCase()        toLowerCase()              CharAt()        indexOf()              lastIndexOf()

split()      replace()         substring(start,
end)              substr(start, length)

math()正则表达式匹配        bold()给字符串两边加上<b></b>标签

fontColor()     fontSize()              sub()       sup()       link(“URL”)都是加标签的

Math:random()产生0~1之间的伪随机数,含0不含1,可能为0,但总小于1,为小数

怎么产生1—10之间的整数呢?random()*10+1需要转换成整数,使用Global对象方法

Global:封装一些不属于具体某个对象的单独存在的全局方法,可不用对象名直接调用

parseFloat()           parseInt()                     radix 基数

parseInt(numString,
[radix])  radix指定numString的进制形式,2~36

默认0x开头位16进制,0开头为八进制,其他为十进制

如果numString前缀不能转为数字,则返回NaN(Not a number)可用isNaN()检测

parseInt(“aaa”)       NaN               parseInt(“33abe”)   33

提示:转换前先用正则匹配,是数字再转换

反向转换用toString方法

toString([radix])

Data:日期时间对象

var d = new Data();

with(d)

{

var month = getMonth()+1;       月份从0开始

month
= month>9?month:”0”+month;  月份用两位数  日也可这样做

alert(getYear()+”年”+month+”月”+getData()+”日,星期”+getDay());

}

prototype属性:获取对象原型,可以给源对象添加自定义功能或属性

function getMax()

{

var
max = this[0];

for
(var x=1; x<this.length; x++)

{

if (max<this[x])

max = this[x];

}

return max;

}

Array.prototype.getMax = getMax;       给Array对象添加getMax方法,可直接调用

JS知识点摘记(一)的更多相关文章

  1. JS知识点整理(二)

    前言 这是对平时的一些读书笔记和理解进行整理的第二部分,第一部分请前往:JS知识点整理(一).本文包含一些易混淆.遗漏的知识点,也会配上一些例子,也许不是很完整,也许还会有点杂,但也许会有你需要的,后 ...

  2. Node.js知识点学习

    Node.js知识点学习 一.基本概念 Node.js,或者 Node,是一个可以让 JavaScript 运行在服务器端的平台.可以说,Node.js开创了javascript模块化开发的先河,早期 ...

  3. JS知识点整理(一)

    前言 本文把平时的一些读书笔记和理解进行了整理归纳,包含一些易混淆.遗漏的知识点,也会配上一些例子,可能不是很完整,还会有点杂,但也许会有你需要的(目前先整理了一部分,笔记有点多,后续会持续更新). ...

  4. vue.js 知识点(四)

    看完了vue.js的官方文档,大概对这些知识有了那么一点的了解了,但是很多具体的运用还不太清楚,现在就总结一下,关于其中的一些知识点的运用: v-bind:  动态绑定指令,默认情况下,是给html ...

  5. fabric.js 知识点整理

    fabric.js是一个很好用的 canvas 操作插件,下面整理了一些平时项目中用到的知识点: //1: 获得画布上的所有对象: var items = canvas.getObjects(); / ...

  6. JS知识点查漏补缺

    知识点1: 判断语句中遇到NaN即为 False 只需要注意遇到False即为False即可 使用join(),toString()皆可以将数组转化为字符串 二者的相同点在于都可以转化数组为字符串 二 ...

  7. 前端必备的js知识点(转载)

    1.本文主体源自:http://www.cnblogs.com/coco1s/p/4029708.html,有兴趣的可以直接去那里看,也可以看看我整理加拓展的.2.js是一门什么样的语言及特点?    ...

  8. Node.js知识点

    1. 入口文件app.js里的路由,按顺序执行: 2.

  9. JS知识点备忘

    做前端久了,会发现很多比较杂的知识点,平时很少用到(往往在面试的时候经常见到),但是遇到的时候会很揪心...所以遇到的时候把它记录下来,但求有个印象,再次遇到时,可以在这里快速找到解决. 1.文档碎片 ...

随机推荐

  1. DOM常见属性及用法

    1:innerHTML.outerHTML.innerText.outerText innerHTML: 设置或获取位于对象起始和结束标签内的HTML. outerHTML: 设置或获取对象及其内容的 ...

  2. php抽象类与接口的区别

    1.对接口的使用是通过关键字implements.对抽象类的使用是通过关键字extends.当然接口也可以通过关键字extends继承. 2.接口中不可以声明成员变量(包括类静态变量),但是可以声明类 ...

  3. Asp.net Mvc 中的模型绑定

    asp.net mvc中的模型绑定可以在提交http请求的时候,进行数据的映射. 1.没有模型绑定的时候 public ActionResult Example0() { ) { string id ...

  4. SQL Server 数据库状态选项

    选项 1. single_user(单用户),multi_user(多用户),restricted_user(受限用户); 描述数据库的用户访问属性,它们互斥,设置其中任何一个选项就会取消对其它选项的 ...

  5. keil mdk中如何确保某一段程序不被优化掉

    使用mdk编程,假如有一个有用的函数你定义了但是没有显式的调用,mdk在默认方式下,将会把这个函数从整个程序总删除掉,以节省ROM. 比如,你在ROM的0x00002000处定位了一个函数,假设为vo ...

  6. mininet 中图形化界面的安装

    just run a GUI in VM console window First, log in to the VM in its console window (i.e. type directl ...

  7. poj 2686 Traveling by Stagecoach ---状态压缩DP

    题意:给出一个简单带权无向图和起止点,以及若干张马车车票,每张车票可以雇到相应数量的马. 点 u, v 间有边时,从 u 到 v 或从 v 到 u 必须用且仅用一张车票,花费的时间为 w(u, v) ...

  8. [zoj 3774]Power of Fibonacci 数论(二次剩余 拓展欧几里得 等比数列求和)

    Power of Fibonacci Time Limit: 5 Seconds      Memory Limit: 65536 KB In mathematics, Fibonacci numbe ...

  9. aps.net要掌握的技术

    Spring.Net.NHibernate.Entity Framework.ASP.Net MVC.HTML5.WCF.数据库集群.分布式应用集群.高性能读写NoSql

  10. php什么是变量的数据类型

    什么是变量的数据类型 在变量中,由于变量占用的空间单元不一样(占的地盘大小不一样),也分成几种数据类型,就像超市商品的包装袋,有几种不同类型,不同的商品使用不同的包装袋.我们可以通过使用“memory ...