JS简介
JavaScript使用的目的:
- 操作html 样式
- 验证输入
- 对事件做出反应
Javascript语法
数据类型
类型 | 声明方法 | 示例 |
---|---|---|
字符串 | 双引号内包括 | var str = "value" |
数字 | 直接写数值 | var num = 2 |
布尔 | true/false | var bool = true |
数组 | new Array() | var car = new Array(); car[0] = "audi"; car[1] = "BMW"; |
var car = ("audi", "BMW"); | ||
对象 | new object | var person = { firstname:"Bill",//使用逗号 lastname:"Gites", } |
验证输入
- 使用正则表达式限制表格输入(使用属性pattern)
<input type="text" pattern="\w+@\w+.\w+">
- 使用JS进行验证
<html>
<head>
<script type="text/javascript">
function validate_email(field,alerttxt)
{
with (field)
{
apos=value.indexOf("@")
dotpos=value.lastIndexOf(".")
if (apos<1||dotpos-apos<2)
{
alert(alerttxt);
return false
}
else
{
return true;
}
}
}
function validate_form(thisform)
{
with (thisform)
{
if (validate_email(email,"Not a valid e-mail address!")==false)
{
email.focus();
return false;
}
}
}
</script>
</head>
<body>
<form action="submitpage.htm"onsubmit="return validate_form(this);" method="post">
Email: <input type="text" name="email" size="30">
<input type="submit" value="Submit">
</form>
</body>
</html>
操作DOM
- html
var element = document.getElementById(id);
element.innerHTML = "<p>hello world</p>";
- css
var element = document.getElementById(id);
element.style.color = "blue";
- event
- 绑定各种事件
- element
关于JS
原始数据类型
- 种类
- undefined - 如果变量是 Undefined 类型的
- boolean 如果变量是 Boolean 类
- number - 如果变量是 Number 类型的
- string 如果变量是 String 类型的
- object 如果变量是一种引用类型或 Null 类型的
- 常用类型转换
方法 | 说明 | 示例 | 备注 |
---|---|---|---|
toString() | 将对象转换为字符串 | num.toString(2);//可以将这个数字以2进制输出为字符串 | |
parseInt() | 将对象转换为int类型 | string.parseInt(); | 只有对 String 类型调用这些方法,它们才能正确运行;对其他类型返回的都是 NaN。 |
Boolean() | 强制类型转换为布尔类型 | Bollean(value); | 当要转换的值是至少有一个字符的字符串、非 0 数字或对象时,Boolean() 函数将返回 true。如果该值是空字符串、数字 0、undefined 或 null,它将返回 false。 |
Number() | 强制类型转换为数字类型 | Number(value) | Number() 函数的强制类型转换与 parseInt() 和 parseFloat() 方法的处理方式相似,只是它转换的是整个值,而不是部分值parseInt() 和 parseFloat() 方法只转换第一个无效字符之前的字符串 |
String() | 强制类型转换为字符串 | String(value) |
常见对象的基础方法
- Object对象
方法(属性) | 作用 |
---|---|
constructor | 对创建对象的函数的引用(指针)。对于 Object 对象,该指针指向原始的 Object() 函数。 |
Prototype | 对该对象的对象原型的引用。对于所有的对象,它默认返回 Object 对象的一个实例。 |
hasOwnProperty(property) | 判断对象是否有某个特定的属性。必须用字符串指定该属性。(例如,o.hasOwnProperty(“name”)) |
IsPrototypeOf(object) | 判断该对象是否为另一个对象的原型。 |
PropertyIsEnumerable | 判断给定的属性是否可以用 for…in 语句进行枚举。 |
ToString() | 返回对象的原始字符串表示。对于 Object 对象,ECMA-262 没有定义这个值,所以不同的 ECMAScript 实现具有不同的值。 |
ValueOf() | 返回最适合该对象的原始值。对于许多对象,该方法返回的值都与 ToString() 的返回值相同。 |
- Number 对象
方法(属性) | 作用 | 示例 |
---|---|---|
toFixed() | 返回具有指定位数小数的数字的字符串表示 | var oNumberObject = new Number(68); alert(oNumberObject.toFixed(2)); //输出 “68.00” |
toExponential() | 返回科学计数法表示的数字的字符串形式。 | var oNumberObject = new Number(68); alert(oNumberObject.toExponential(1)); //输出 “6.8e+1” |
toPrecision() | 根据最有意义的形式来返回数字的预定形式或指数形式,有一个用于表示数的数字总数参数 | var oNumberObject = new Number(68); alert(oNumberObject.toPrecision(1)); //输出 “7e+1” |
- String
方法(属性) | 作用 | 示例 | 说明 |
---|---|---|---|
length 属性 | 字符串中的字符个数 | var oStringObject = new String(“hello world”); | oStringObject.length=5 |
charAt() | 访问字符串中的单个字符 | (oStringObject.charAt(1) oStringObject.charCodeAt(1) | 返回为字符e 返回字符"e"的字符代码101 |
1.indexOf() 2.lastIndexOf() | 1.从字符串的开头(位置 0)开始检索字符串 2.从字符串的结尾开始检索子串 | ||
slice() | 。第一个参数是要获取的子串的起始位置,第二个参数(如果使用的话)是要获取子串终止前的位置 | ||
toLowerCase() | 全部转换为大写 | ||
toUpperCase() | 全部转换为小写 |
- windows内置函数
- location:
- location.hostname 返回 web 主机的域名
- location.pathname 返回当前页面的路径和文件名
- location.port 返回 web 主机的端口 (80 或 443)
- location.protocol 返回所使用的 web 协议(http:// 或 https://)
- location.assign 打开一个新文档
- 消息框
- 警告框
alert
- 提示框
prompt
- 确认框
confirm
- 警告框
- location: