一、js变量数据类型2种:
1.原始模型(基本)
分为5种:
number---数字
string--字符串,单引号和双引号一样
boolean--
null-----代表空
undefined----未声明就使用的变量
2.引用类型
3.查看数据类型
typeof---查看数据类型
instanceof---判断引用类型
var a=1;
alert(typeof(a)); //number
alert(a instanceof Number);//false
var b=new Number(10);
alert(typeof(b)); //object
alert(b instanceof Number);//true,
二、js之函数定义
完成特定功能;可以提高程序复用性;在特定情况下才调用,不是加载页面调用
1.js中定义函数的3种方式:
1)普通方式
function 函数名(参数1,参数n){
方法体;}
eg:function add(a,b){return a+b;}
alert(add(3,4))
2)构造函数
var 函数名= new Function(参数1,参数n,方法体);
eg: var add = new Function('a','b','return a+b;');
3)直接量定义函数:
var 函数名=function(){}
var add = function(a,b){return a+b;}
即:------------------------------------------------
1.function 函数名(参数){方法体;}--------------------function say(){}
2.var 函数名=function( 参数){方法体}----------------var say =fuction(){}
3.var 函数名=new Function(参数,方法体 );---------var say=new Function()
------------------------------------------------------
二、DOM
1.节点
html由标签---属性---文字(元素节点,文本节点,属性节点)构成
注意:属性节点不是子节点;文本节点时子节点 <input type="text" name="username" value="传智播客5周年_1" id="tid" >
2.查找标签的三种方式:
a.getElementById---如果多个元素id相同,仅获得第一个元素
1)输出value的值
*var tidElement = document.getElementById("tid");
*alert(tidElement.value);
2)输出type的值
*alert(tidElement.type);
b.getElementsByName----------返回集合数组
1)通过元素的name属性获取所有元素的引用 ,并输出数组的长度
var tnameElements = document.getElementsByName("tname");
alert(tnameElements.length);
2)输出所有value属性的值
// for(var i=0;i<tnameElements.length;i++){
// var tnameElement = tnameElements[i];
// alert(tnameElement.value);
// }
3)为每个文本框(<input type="text">)增加change事件,当值改变时,输出改变的值
如果修改原有html增加事件不好,改变了结构---我们采用增加js代码,在加载页面时
//1.获得三个文本框 var tnameElements = document.getElementsByName("tname");
//2.遍历--增加onchange事件------ 值改变的值
for(var i=0;i<tnameElements.length;i++){
var tnameElement = tnameElements[i];
tnameElement.οnchange=function()[
//alert(tnameElement.value)//这个指向最后一个
alert(this.value)//this代表当前操作的文本框
}
}
c.getElementsByTagName
//1.通过getElementById获得id对应标签 :var tidElement = document.getElementById("tid");
//2.通过getElementsByTagName获得option标签数组:var optionElements = eduElement.getElementsByTagName("option");
//3.// //输出所有下拉选内容
// for(var i=0;i<optionElements.length;i++){
// var optionElement = optionElements[i];
if(optionElement .value="硕士")
{alert(optionElement.value);}
// }
4.值类型方法
a.hasChildNodes()查看是否存在子节点,注意属性节点不是子节点
b.nodeName node Type node Value
----------------------------------------------------------------------------
如何获得文本节点:
var textElement = optElemnet.childNodes[0];
this: