数往知来 JavaScript<十三>

一、javaScript

语法:大小写敏感,弱类型(所有类型都用var进行引导、声明)

写在<script></script>标签里  不可以放在title里

var num=10;

var str=‘123a‘;

var isRight=true;

var ch=‘c‘;

.....

输出

  alert(num);

  alert(str);

-->当字符串在纯JS代码中时,使用双引号,

当字符串在html页中,混合使用的嗯时候,使用单引号,避免与属性值冲突’

1、javascript事件

---》onclick   鼠标点击事件

-->onblur   失去焦点

-->onmouseover   鼠标悬停

-->由于js中的类型是弱类型,因此非常容易出现计算数字的时候,变成字符串拼接的情况

parseint(字符串);

将字符串转换成数字进行计算

2、匿名函数  (跟C#的委托的匿名方法类似)

把一个方法作为一个变量来使用

var func=function(){

var sum=0;

for(var i=1;i<=100;i++){

sum+=i;

}

return sum;

}

var num=func();

alert(num);

3、对象

js中的对象可以看做为构造函数

在创建对象的时候,可以直接通过对象名.成员名的方式进行创建对象成员,只要赋值了一次,以后就可以直接当做对象的属性或方法直接使用

function Person(){

this.name="张三";

this.age=19;

this.gender=‘男‘;

this.sayHello=function(){

alert(‘你好,我叫‘+this.name+‘,今年‘+this.age+‘岁了,‘+‘我是‘+this.gender+‘同学。‘);

//alert(‘你好,我叫{0},今年{1}岁了,我是{2}同学。‘,this.name,this.age,this.gender);

}

}

var p=new Person();

p.name=‘蒋中正‘;

p.zhiye=‘学生‘;

p.sayHi=function(){

alert(‘你好,我叫‘+this.name+‘,今年‘+this.age+‘岁了,‘+‘我是‘+this.gender+‘同学。我是‘+this.zhiye);

}

p.sayHello();

p.sayHi();

js数组

push 方法

将一个或多个新元素追加到数组的末尾中,并返回数组的新长度值。

arr.push([item1 [item2 [. . . [itemN ]]]])

如:

var arr= new Array(0,1,2,3,4);
arr.push(5,6,7,8,”枫岩”,”CnLei”);
alert(arr[arr.length-1]);

————————————————

pop 方法

移除数组中的最后一个元素并返回该元素,如果该数组为空,那么将返回 undefined。

arr.pop()

示例

var arrayObj = new Array(0,1,2,3,4);

alert(arrayObj.pop());

shift 方法

移除数组中的第一个元素并返回该元素。

arr.shift( )

unshift 方法

将指定的一个或多个元素插入数组开始位置并返回该数组。

arr.unshift([item1[, item2 [, . . . [, itemN]]]])

concat 方法 (Array)

返回一个新数组,这个新数组是由两个或更多数组组合而成的。

array1.concat([item1[, item2[, . . . [, itemN]]]])

concat 方法返回一个 Array 对象,其中包含了 array1 和提供的任意其他项目的连接。

要加的项目(item1 … itemN)会按照从左到右的顺序添加到数组。

如果某一项为数组,那么添加其内容到 array1 的末尾。

如果该项目不是数组,就将其作为单个的数组元素添加到数组的末尾。

以下为从源数组复制元素到结果数组:

对于从正被连接到新数组的数组中复制的对象参数,复制后仍然指向相同的对象。不论新数组和源数组中哪一个有改变,都将引起另一个的改变。 对于连接到新数组的数值或字符串,只复制其值。一个数组中值有改变并不影响另一个数组中的值。

function ConcatArrayDemo(){
 var a, b, c, d;
 a = new Array(1,2,3);
 b = “JScript”;
 c = new Array(42, “VBScript);
 d = a.concat(b, c);
 return(d);  // 返回数组 [1, 2, 3, "JScript", 42, "VBScript"]
}

join 方法

返回字符串值,其中包含了连接到一起的数组的所有元素,元素由指定的分隔符分隔开来。

arr.join(char)

arr为Array 对象。

char是一个 String 对象,作为数组元素之间的分隔符。如果省略了这个参数,那么数组元素之间就用一个逗号来分隔。

说明

如果数组中有元素没有定义或者为 null,将其作为空字符串处理。

示例

下面这个例子说明了 join 方法的用法。

function JoinDemo(){
 var a, b;
 a = new Array(0,1,2,3,4);
 b = a.join(“-”);
 return(b);     // 返回 “0-1-2-3-4″
}

sort 方法

返回一个元素已经进行了排序的 Array 对象。

arr.sort(fun)

参数

arr是 Array 对象。

fun是用来确定元素顺序的函数名。如果这个参数被省略,那么元素将按照 ASCII 字符顺序进行升序排列。

说明

sort 方法将 Array 对象进行适当的排序;在执行过程中并不会创建新的 Array 对象。

如果提供了 fun 参数,那么该函数必须返回下列值之一:

(1)负值,如果所传递的第一个参数比第二个参数小。

(2)零,如果两个参数相等。

(3)正值,如果第一个参数比第二个参数大。

示例

<script type=”text/javascript”>
function AscSort(x, y) {
  return x == y ? 0 : (x > y ? 1 : -1);
}

function DescSort(x, y) {
  return x == y ? 0 : (x > y ? -1 : 1);
}

function RandomSort(x, y) {
  return Math.floor(Math.random() * 2 – 1 );
}

var array = [2,4,3,5,1,6,9,0,8];

document.write(“<p>正序:” + array.sort(AscSort) + “</p>”);
document.write(“<p>倒序:” + array.sort(DescSort) + “</p>”);
document.write(“<p>随机排序:” + array.sort(RandomSort) + “</p>”);
document.write(“<p>随机排序:” + array.sort(RandomSort) + “</p>”);
document.write(“<p>随机排序:” + array.sort(RandomSort) + “</p>”);
</script>

slice 方法 (Array)

返回一个数组的一段。返回一个 Array 对象

arr.slice(start, [end])

参数

start 开始元素是从零开始计算的下标。

end 结束元素是从零开始计算的下标。

slice 方法一直复制到 end 所指定的元素,但是不包括该元素。

如果 start 为负,将它作为 length + start处理,此处 length 为数组的长度。

如果 end 为负,就将它作为 length + end 处理,此处 length 为数组的长度。

如果省略 end ,那么 slice 方法将一直复制到 arrayObj 的结尾。

如果 end 出现在 start 之前,不复制任何元素到新数组中。

示例

在下面这个例子中,除了最后一个元素之外,myArray 中所有的元素都被复制到 newArray 中:

newArray = myArray.slice(0, -1)

splice 方法

从一个数组中移除一个或多个元素,如果必要,在所移除元素的位置上插入新元素,返回所移除的元素。

arr.splice(start, deleteCount, [item1[, item2[, . . . [,itemN]]]])

参数

start 指定从数组中移除元素的开始位置,这个位置是从 0 开始计算的。

deleteCount 要移除的元素的个数。

item1, item2,. . .,itemN  要在所移除元素的位置上插入的新元素。

reverse 方法

返回一个元素顺序被反转的 Array 对象。

arr.reverse( )

在执行过程中,这个方法并不会创建一个新的 Array 对象。

如果数组是不连续的,reverse 方法将在数组中创建元素以便填充数组中的间隔。这样所创建的全部元素的值都是 undefined。

示例

function ReverseDemo(){
 var a, l; // 声明变量。
 a = new Array(0,1,2,3,4); // 创建数组并赋值。
 l = a.reverse(); // 反转数组的内容。
 return(l); // 返回结果数组。
}

时间: 2024-10-03 21:17:58

数往知来 JavaScript<十三>的相关文章

数往知来 JavaScript js正则表达式&lt;二十五&gt;

1.匹配Email地址的正则表达式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)* 评注:表单验证时很实用 2.匹配网址URL的正则表达式:[a-zA-z]+://[^s]* 评注:网上流传的版本功能很有限,上面这个基本可以满足需求 3.匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$ 评注:表单验证时很实用 4.匹配国内电话号码:d{3}-d{8}|d{4}-d{7} 评注:匹配形式如 051

轻松学习JavaScript十三:JavaScript基于面向对象之继承(包含面向对象继承机制)

一面相对象继承机制 今天算是什么都没干,尽在了解面向对象三大特性之一的继承了,过去的学习的C++和C#都是正统的面向对象语 言,学习的时候也没有怎么深入了解过,只是简单的学习最基础的继承.下午在看继承机制的时候,看到一个很经典 的继承机制实例.这个实例使用UML很好的解释了继承机制. 说明继承机制最简单的方式是,利用一个经典的例子就是几何形状.实际上,几何形状只有两种,即椭圆形(是圆 形的)和多边形(具有一定数量的边).圆是椭圆的一种,它只有一个焦点.三角形.矩形和五边形都是多边形的一种, 具有

滑动门类的特效

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

javascript高级程序设计 第十三章--事件

javascript高级程序设计 第十三章--事件js与HTML的交互就是通过事件实现的,事件就是文档或浏览器窗口中发生的一些特定的交互瞬间. 事件流:事件流描述的是从页面中接收事件的顺序,IE的是事件冒泡流,Netscape的是事件捕获流,这个两个是完全相反的事件流概念. 事件冒泡:由最具体的元素接收,然后逐级向上传播到更高级的节点,即事件沿DOM树向上传播,直到document对象. 事件捕获:不大具体的节点应该更早接收到事件,相当于沿DOM节点树向下级传播直到事件的实际目标,在浏览器中,是

全栈JavaScript之路( 二十三 )DOM2、DOM3, 涉及XML命名空间的扩展(一)

<!DOCTYPE html> <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml"> <head> <title>Example XHTML page</title> </head> <body> <s:svg xmlns:s="http://www.w3.org/2000/svg" version="1.1&

JavaScript高级程序设计:第十三章

第十三章 一.理解事件流 事件流描述的是从页面中接收事件的顺序. 1.事件冒泡 IE的事件流叫做事件冒泡,即事件开始时由最具体的元素接收,然后逐级向上传播到较为不具体的节点.以下面的HTML页面为例: <!DOCTYPE html> <html> <head> <title>Event Bubling Example</title> </head> <body> <div id="myDiv"&g

javascript基础学习(十三)

javascript之文档对象 学习要点: 文档对象 文档对象的应用 一.文档对象 Document对象是代表一个浏览器窗口或框架中的显示HTML文件的对象.javascript会为每个HTML文档自动创建一个Document对象.通过Document对象可以操作HTML文档中的内容及其他对象. Document对象的子对象: Anchor对象,Applet对象,Cookie对象,Embed对象,Form对象,Image对象,Link对象,Location对象,Plugin对象. 二.文档对象的

《Javascript权威指南》学习笔记之十三:处理日期和时间

一.创建Date实例 1.Date类的方法和属性很多不是静态的,因此,在应用Date类的属性和方法之前,必须创建Date类的实例. var date = new Date();  //以当前日期和时间创建实例. var date = new Date(value);  //value是必选项,如果是数值,value表示指定日期与1970.1.1午夜之间的毫秒数:如果是字符串,value则按照parse()方法中的规则进行解析.全局的Date()函数完成与new Date(value)相同的功能

《javascript高级程序设计》第十三章知识点

第十三章知识点总结 1.事件流: ①事件冒泡:事件开始时由最具体的事件接受,逐级向上传播到较为不具体的节点. ②事件捕获:不太具体的节点更早的接受事件,最具体的节点应该最后接到事件. 事件流包括三个阶段:事件捕获阶段.处于目标阶段.事件冒泡阶段. 2.事件处理程序 3.事件对象 IE 属性 除了上面的鼠标/事件属性,IE 浏览器还支持下面的属性: 属性 描述 cancelBubble 如果事件句柄想阻止事件传播到包容对象,必须把该属性设为 true. fromElement 对于 mouseov