珠峰培训之js组成和js的基本数据类型
2016-07-10 20:16:56
214
1.页面组成
页面由HTML(超文本标记语言)+CSS(层叠样式表)+Javascript(动态脚本语言)三部分组成
1.1 js引入页面的方式
- 行内引入(不推荐),安全性能低
- script内嵌
- script外链
注意:在外链的script标签中间写的js代码不执行,也不报错
因为html从上至下加载,所以将js文件放在body最后面,js可以获取html标签添加动态效果
1.2 js常用输出方式
alert("..."); //alert自动将输出内容转为字符串
document.write("...");
cosole.log("...");
objNode.innerHTML = "...";
objNode.innerTEXT = "...";
1.3 JS的三部分
JS由ECMAScript
、DOM(document object model)
和BOM(browser object model)
三部分组成
1.4 JS的命名规范
在js中严格区分大小写,常用命名法使用驼峰命名方式
- 首字母小写,其余有意义的首字母大写
- 使用数字,字母,下划线,$,但不能以数字开头
- 不能使用关键字和保留字
2.变量和数据类型
js中的变量是松散类型的,声明的变量可存储任何数据类型;
js的数据类型有Number,String,Boolean,Null,Undefined,Object
其中基本数据类型由简单结构组成,如Number,String,Boolean,Null,Undefined
引用数据类型的结构相对复杂,分为:对象
数据类型:object、数组、正则;函数
数据类型:function
2.1 Number数据类型
- 强制数据类型转换 Number():
强制将其他数据类型转换为number数据类型,如果是字符串,字符串中一定是数字才可以转换
console.log(Number('12px')); //NaN
- 非强制数据类型转换 parseInt(),parseFloat():
在转换中途遇到非有效数字就不查找了
parseInt('12px');
parseInt('12px13');
parseInt('zhufeng2015');
parseInt('12.5px');
parseFloat('12.5px');
Number('12.5px');
var num = Number('12px'); //NaN
if( num == 12){
console.log(12);
}else if(num == NaN){
console.log(NaN);
}else{
console.log('以上都不是');
}
- NaN表示不是一个有效数字,但属于Number数据类型
isNaN()用于检测一个值是否为有效数字
console.log(NaN == NaN); //false
console.log(isNaN("123")); //true
如果检测的值不是number数据类型,浏览器会默认把它转化成number数据类型,然后再比较
2.2 Boolean数据类型
转换规则
- 如果只有一个值,判断这个值的真假;
- 0,NaN,”“,undefined,null这五个值都为假
- val1 == val2 两值相比若不是同一数据类型的,先默认进行数据转换
2.3 Object对象数据类型
对象由多组属性名和属性值组成,属性名和属性值用来描述对象特征,创建方式有:
- 字面量创建方式
var obj = {name:'zhangsan'}
- 实例创建方式
var obj = new Object();
//增加属性名和属性值的方式
obj.name = 'zhangsan';
obj["name"] = 'zhangsan'; //方括号创建必须双引号属性名
//修改属性值,规定:对象中的属性名不允许重复,如果之前有就是修改,没有就是增加
obj.name = "zhufeng";
obj["name"] = "zhufeng";
//获取属性名和属性值的方式
console.log(obj["name"]);
console.log(obj.name);
console.log(obj.aa); //若对象中没有属性名,则返回undefined
//删除属性名和属性值
obj.name = null; //假删除,该属性值仍然存在
delete obj.name; //真删除,彻底删除属性名和属性值
对象数据类型中包含:对象类(Obejct),数组类(Array),正则类(RegExp),时间类(Date),字符串类(String),布尔类(Boolean),Math…对应的实例
js中对象、类、实例的区别:对象是泛指;类是对象的具体细分;实例是类中具体事物