javascript
1 概述
js是运行在浏览器的语言,是解释型语言,无需编译就能运行,就算有错误,没有语法错误的地方还能运行,js能放在任何地方。
2 变量
js可以用单双引号声明字符串。js中null表示变量值为空,undefined表示变量没指向任何对象。
变量声明用var,不用var声明的是全局变量。
if(x)可以判断变量是否初始化,因为js中0,null,undefined,空字符串都被解释为false。
js的数据类型一共有六种:
1、Boolean(布尔) 值类型
2、Number(数字) 值类型
3、String(字符串) 值类型
4、Undefined(未定义,undefined) 值类型 表示一个未知状态
三种情况可能出现Undefined:
1、声明了但是没有初始化的该变量,变量的值是一个未知状态(undefined)。 (访问不存在的属性或对象window.xxx)
2、方法没有明确返回值时,返回值是一个undefined.
3、当对未声明的变量应用typeof运算符时,显示为undefined(*)
5、Null(已定义,null) 值类型
null表示尚未存在的对象,null是一个有特殊意义的值。
可以为变量赋值为null,此时变量的值为“已知状态”(不是undefined),即null。
(用来初始化变量,清除变量内容,释放内存)
6、Object(对象类型)引用类型
查看变量的类型用typeof(变量)
类型转换:
1、parseInt(arg)//将指定的字符串,转换成整数(常用)
2、parseFloat(arg)//将指定的字符串,转换成浮点数(常用)
3、Number(arg)把给定的值(任意类型)转换成数字(可以是整数或浮点数);
转换的是整个值,而不是部分值。如果该字符串不能完全转换为整型,则返回NaN。(Not a Number)
4、isNaN(arg)//判断arg是否为一个非数字(NaN),NaN与NaN也不相等。
5、String(arg)把给定的值(任意类型)转换成字符串;
6、Boolean(arg)把给定的值(任意类型)转换成 Boolean 型;
7、eval(codeString)//将一段字符串的js代码,计算并执行。类似于动态SQL语句exec(‘select * from biao’)。
3 函数
function add(a1,a2){
return a1+a2;
}
不需要声明返回值类型、参数类型,JavaScript中不像C#中那样要求所有路径都有返回值,没有返回值 就是undefined。
4 匿名函数
var f1 = function(i1,i2){
return i1+i2;
}
5 面向对象
js可以模拟面向对象:
function Person(name,age) {
this.name = name;
this.age =age;
this.sayHello=function(){
alert("你好,我是"+this.name+",我"+this.age+"岁了");
}
}
var p1 = new Person("tom",20);
p1.sayHello();
6 string对象
length 长度
charAt 取第几个字符
indexOf lastIndexOf 字符在字符串的位置
substr(start,length)、substring(start,end) 截取字符串
split 分组
match 返回匹配正则表达式的字符串
replace 替换匹配正则表达式的字符串
search 查找匹配正则表达式的字符串
7 正则表达式
var reg = new RegExp("")或者var reg = //
test(str)判断字符串str是否匹配正则表达式
exec(str)进行搜索匹配,返回值为匹配结果,没找到返回null
8 Array
Array对象就像c#中的数组、arraylist、dictionary的集合体,声明 var arr = new Array();
简化声明 var arr= [5,45,5,5,9,5,59,54,694,9]或者var arr = {"tom":30,"jim":20};
9 json对象
对象是一个无序的“‘名称/值’对”集合。
一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。
10 扩展方法
string.prototype.方法名 = function(){}扩展方法的声明要在使用扩展方法之前执行

浙公网安备 33010602011771号