JavaScript回顾
JavaScript是Web编程语言。
- JavaScript是一种基于对象的脚本语言
- 它是解释执行的
- 在客户端的浏览器中运行
- 可以被嵌入HTML文件中
- 代码以纯文本的形式存储在文件中
- 可以使用任何一种文本编辑器来编辑JavaScript程序
- 单行注释使用//,块注释使用/*...*/
- 在字符串中插入特殊字符 如 “ ‘ ; &,使用 \ + 特殊字符;如: You & I sing “Happy Birthday”.document.write(“You \& I sing \”Happy Birthday\”.”)
- 声明变量:用命令var做声明
- 变量必须以字母、下划线(_)或美元符号($)
- 开头余下的字符可以是下划线、美元符号或任何的字母或数字
- 不能使用JavaScript中的关键字或者保留字做为变量名称
变量
在JavaScript中有五种基本运算类型:
- Underfunded——未定义类型(变量值为Underfunded)
- String——字符串类型(用""或者''括起来的字符或数值)
- Boolean——布尔类型(变量值为true或false)
- Null——空类型(变量值为null)
- Number——数值类型(特殊值NaN非数)
类型转换
运算 | 结果 |
数值与字符串相加 | 将数值强制转换为字符串。 |
布尔值与字符串相加 | 将布尔值强制转换为字符串。 |
数值与布尔值相加 | 将布尔值强制转换为数值 |
其他类型转换为String方法1.toString方法2.String()函数
其他类型转换为Number使用Number函数
非数字转换为NaN parseInt(),parseFloat()函数
转换为Boolean类型使用Boolean()函数
函数的格式
function 函数名( param1 , param2 , ..... ){
//函数体
return 返回值;
}
var 返回值变量 = 函数名(实参列表);
注意1:JavaScript里面,根据函数名来确定调用哪一个函数!后面定义的函数覆盖前面的函数。
function add( i , j ){
return i + j;
}
function add( i ){
return i;
}
var z = add(1,2);
alert(z); ==> 1
注意2:调用名,和参数个数没有没有关系,顺次将实际传入的参数对应到形式参数上。
function add( i , j , m ){
return i + j;
}
var z = add(1,2,4,5,6);
alert(z); ==>3
注意3:函数的内部有一个属性,叫做arguments,存放了所有实际参数的值。
//求几个数字的合计
function add(){
var sum = 0 ;
for( var k = 0 ; k < arguments.length ; k++ ){
sum = sum + arguments[k];
}
return sum;
}
var z = add(1,2,4,5,6);
alert(z); ==> 18
注意4:函数内部可以定义函数,该函数叫做内部函数,如果没有做特殊处理,那么该函数只能被内部调用。
消息框 (window对象)
alert()/prompt()/confirm()
对象Object
var obj = new Object();
obj.id = "1001";
obj.name = "张三丰";
obj.sex = true;
obj.birthday = new Date();
obj.action = function(){
alert(this.name + "每天打太极拳!");
//this指代当前对象
};
//打印同学信息
function display( obj ){
alert(obj.id);
obj.action();
}
display(obj); ==> 1001 张三丰每天打太极
数组
- 按照索引赋值和取值
- 数组可以放任意数据类型的数据
- 数组的长度不固定
- 数组可以不按照序号赋值
- 没有赋值的对应的元素取值为undefined
var ary = new Array(
"1001" , "张三丰" , true , function(){
alert("打太极!");
}
);
ary[3]();
ary[6] = "张君宝";
alert( ary[6] );
alert( ary[5] ); // undefined
重要的方法:
1. join
范例:
var ary = new Array(1,2,"张三丰");
var str = ary.join(",");
alert(str); //join 方法 返回字符串值,其中包含了连接到一起的数组的所有元素,元素由指定的分隔符分隔开来。
2.排序方法 sort
范例:
var ary = new Array(1,2,5,12,45,8,4);
var newAry = ary.sort(
function(i , j ){
return i - j;//如果sort方法不传递任何参数,则按照字典顺序的ascii码值进行排序。
}
);
//sort 方法将 Array 对象进行适当的排序;在执行过程中并不会创建新的 Array 对象。
//如果为 sortfunction 参数提供了一个函数,那么该函数必须返回下列值之一:
//负值,如果所传递的第一个参数比第二个参数小。
//零,如果两个参数相等。
//正值,如果第一个参数比第二个参数大。
alert(newAry); //按照数字进行排序
如果sort方法不传递任何参数,则按照字典顺序的ascii码值进行排序。
String类型
- charAt 方法
- indexOf 方法
- replace 方法
- split 方法
- substr 方法 | substring 方法
- toLowerCase 方法 | toUpperCase 方法
演示:
//split 方法
var str = "张三丰0杨玉环1李斯的&杨广";
var ary = str.split(/[0-9]|&/);//split 方法 将一个字符串分割为子字符串,然后将结果作为字符串数组返回。
for( var i = 0 ; i <ary.length ; i++ ){
alert(ary[i]);
}
//substr 方法 | substring 方法 返回一个从指定位置开始的指定长度的子字符串 返回位于 String 对象中指定位置的子字符串。
//如果 length 为 0 或负数,将返回一个空字符串。如果没有指定该参数,则子字符串将延续到 stringvar 的最后。
function SubstrDemo(){
var s, ss; // 声明变量。
var s = "The rain in Spain falls mainly in the plain.";
ss = s.substr(12, 5); // 获取子字符串。
alert(ss);// 返回 "Spain"。
}
SubstrDemo();
//substring 方法将返回一个包含从 start 到最后(不包含 end )的子字符串的字符串。
//substring 方法使用 start 和 end 两者中的较小值作为子字符串的起始点。例如, strvar.substring(0, 3) 和 strvar.substring(3, 0) 将返回相同的子字符串。
//如果 start 或 end 为 NaN 或者负数,那么将其替换为0。
//子字符串的长度等于 start 和 end 之差的绝对值。例如,在 strvar.substring(0, 3) 和 strvar.substring(3, 0) 返回的子字符串的的长度是 3。
function SubstringDemo(){
var ss; // 声明变量。
var s = "The rain in Spain falls mainly in the plain..";
ss = s.substring(12, 17); // 取子字符串。
alert(ss); // 返回子字符串
}
SubstringDemo();
//toLowerCase 方法 | toUpperCase 方法 返回一个字符串,该字符串中的所有字母都被转化为大写字母。toUpperCase 方法对非字母字符不会产生影响。
var strVariable = "This is a STRING object";
strVariable = strVariable.toUpperCase( );
alert(strVariable);
对象Date
1. 初始化方式
dateObj = new Date()
dateObj = new Date(dateVal)
dateObj = new Date(year, month, date[,
hours[, minutes[, seconds[,ms]]]])
2. 重要的方法
getDate 方法:得到1-31之间的一个数字
getFullYear 方法:得到年
getMonth 方法:得到月 ,0-11
getTime 方法:得到从1970/01/01标准时间到该时间之间经历的毫秒数
对应有一组setXXXX方法
Date.parse(dateVal) : dateVal --》 日期的字符串
将一个字符串转换成Date对象
function DateDemo(){
var d, s = "Today's date is: "; // 声明变量。
d = new Date(); // 创建 Date 对象。
alert(d);
s += (d.getMonth() + 1) + "/"; // 获取月份。
s += d.getDate() + "/"; // 获取日。
s += d.getFullYear(); // 获取年份。
alert(d.getTime()/1000/60/60/24/365);
alert(s); // 返回日期。
}
DateDemo();
function GetTimeTest(testdate){
var s, t; // 声明变量。
var MinMilli = 1000 * 60; // 初始化变量。
var HrMilli = MinMilli * 60;
var DyMilli = HrMilli * 24;
t = Date.parse(testdate); // 解析 testdate。
s = "There are " // 创建返回的字符串。
s += Math.round(Math.abs(t / DyMilli)) + " days "
s += "between " + testdate + " and 1/1/70";
alert(s); // 返回结果。
}
GetTimeTest("November 1, 1997 10:15 AM");
Math
ceil 方法:大于等于其数字参数的最小整数。
3.4 ==》4
floor 方法:小于等于其数值参数的最大整数。
3.4 ==》3
pow 方法:
random 方法:[0-1)的小数
round 方法:四舍五入到整数
sqrt 方法:返回数字的平方根。
var a = 4.6;
var b = 2;
alert(Math.ceil(a));
alert(Math.floor(a));
alert(Math.pow(2,2));
alert(Math.round(Math.random()*1000));
alert(Math.sqrt(b));
}
math();
最新文章
- 《DSP using MATLAB》示例Example5.12
- 諾基亞定制的Android系統名為 Z Launcher
- 自建yum源及分组安装
- 对需要聚类的数据使用canopy做初步的计算
- hdu 5146 Sequence
- D. Green and Black Tea
- 50道经典的JAVA编程题(31-35)
- jquery-ui-datepicker定制化,汉化,因手机布局美观化源码修改
- c# 读取ACCESS 数据库
- ArcEngine ILabelEngineLayerProperties Expression 添加常量
- CentOS下的Mysql的安装和使用
- xmlns 啥意思
- linux 制作U盘启动,和定制系统
- 《Java程序设计》 第四周学习总结
- 7.11python多进程
- MAC版Eclipse的常用快捷键
- java学习——构造类之3!+5!=126
- inux中Vi不能高亮显示行号的解决办法
- leetcode-292-Nim Game(搬石子)
- 记一次测试环境下PXC集群问题《经验总结》
热门文章
- Nginx的正则表达式
- Spring 4.2.2以上版本和swagger集成方案和踩过的坑
- 二分类算法的评价指标:准确率、精准率、召回率、混淆矩阵、AUC
- (知识)width、naturalWidth、clientWidth、offsetWidth区别整理
- MySQL中concat以及group_concat的使用
- linux日常---2、lamp.sh安装lamp环境中的linux操作
- windows下mingw编译faac
- 【重点突破】—— UniApp 微信小程序开发官网学习One
- 十、Springboot之thymeleaf与jsp共存
- Binary-to-text ecoding: