JavaScript简述

JavaScript
1、javascript简介
(1)基于对象和事件驱动的语言,应用于客户端
客户端:指的是浏览器
补充:Note.js服务端的开发语言
(2)特点
第一个:交互性
第二个:安全性
**JavaScript不能访问本地硬盘的文件
第三个:跨平台性
只要安装了支持javascript的浏览器,就可以运行javascript

(3)Java与Javascript的区别(不同的语言)
第一:公司不同,JavaScript是网景公司
第二:Java是面向对象,javascript是基于对象
第三:javascript是依靠浏览器,java是虚拟机
第四:javascript是弱类型语言,java是强类型语言
java里面
第五:javascript是依靠浏览器运行,java是虚拟机

(4)JavaScript三部分
第一:ECMAScript 由ECMA组织制定语句,语法
第二:BOM brower object model 浏览器对象模型
第三:DOM document object model 文档对象模型

2、js和HTML的结合方式
有2种结合方式
第一种:使用HTML中的标签
<script type="text/javascript">
js代码;
</script>

js里面的注释:
// 单行注释
/*
多行注释
*/
html里面的注释:<!-- -->
css里面的注释/* */

第二种:使用HTML中的标签,引入外部文件
<script type="text/javascript" src="js文件路径"></script>
注意: 1.如果引用外部文件就不要在HTML里面再写js代码
 2.要用</script>结束


3、js的变量的声明和数据类型
(1)js里面的变量声明:使用var
var a = 10;
(2)js的原始数据类型
*java里面的基本数据类型(四类八种)
*js里面的5种原始数据类型
1.String 字符串
var s = "sd";

2.number 数字类型
var i = 10;

3.boolean 布尔型
var b = true;

4.null 表示引用对象为空
null是一个特殊的引用类型

5.undefined 表示一个变量没有赋值
var a;没有赋值

(3)typeof(变量的名称):查看当前变量的类型
alert(typeof(a));


补充:作判断时:"" ,0,undefined都是false


4、js的引用类型和类型转换
引用对象
Object对象:所有对象的父类
Number对象:number原始数据的引用类型
Boolean对象:boolean 原始数据的引用类型


类型转换
转换为字符串:Tostring();
转换为数字:parseInt() 和parseFloat();
强制类型转换
Boolean(Value)- 把给定的值(Value)转换为Boolean型
Number(Value)- 把给定的值转换为数字(可以是整数或浮点数)
String(Value)- 把给定的值转换为字符串


5、js里面的语句
if switch while do-while for 
语法规则与java一致,只是变量声明都是用var


输出语句:document.write(Value);
可以输出HTML语句:document.write("<br/>");
html语句中的属性值可以是单引号,也可以是引号
(问题,HTML5中似乎不支持双引号?)


6、js的运算符
js中的运算符基本与java中一致


不同的:
1、js中不区分整数和小数
例如:200/1000*1000 
java中的结果是:0
js中的结果是:200

2.String类型的加减
相加是拼接
相减,是真的加法运算,如果字符串不是数字就提示NaN


3.Boolean类型的加减
true对应1
false对应0


4.==和===的区别
==比较的是值
===比较的是值和类型

7、数组
js数组声明的方式:4种:
1、var arr1 = []; 
2、var arr2 = ["q",2,true];
3、var arr3 = new Array(3); 
arr3的长度是3
4、var arr4 = new Array(3,4,5);
arr4的元素是3,4,5

js数组的特性:
数组里面存储的数据可以是多种类型


数组的属性:length
arr.length 返回值是arr数组的长度


数组的长度是可变的
var arr = [];
arr[5] = 4; 该数组长度是6;


8、js中的String
1、与HTML相关的方法
var str = "dsada";
document.write(str.fontcolor("red"));
document.write(str.fontsize(7));


问题:link()方法,怎么设置方式?


2、与java相关的方法
charAt() 返回制定位置的字符,没有就返回空
其余的与java类似


substr() 与substring()的区别如下:
var str="ASDFJK"
document.write(str.substr(2,3)); 输出DFJ 从下标为2的元素开始往后的3位
document.write(str.substring(2,3));输出D 包左不包右


9、js中的Array
concat() 连接两个数组 返回的是一个新的组合数组
join() 返回一个按指定元素进行分割的字符串
pop() 删除最后一个元素并返回这个元素
push() 向数组后面添加一个或多个元素,并返回新的长度
push添加的是一个元素,及时添加的是一个数组,也会把数组当成元素添加


10、js中的Math对象
直接使用Math.方法名进行调用
方法:
ceil(x) 向上取整
floor(x) 向下取整
round(x) 四舍五入为一个整数
random(x)返回0-1之间的随机数


11、js中的Date对象
new Date();
方法:
tolocaleString() 根据本地时间格式,把Date对象转换为字符串


getFullYear() 返回年份


getMonth() 返回月份(0-11)


getDay() 返回一周中的(0-6)星期日是0


getDate() 返回月中的某一天(1-31)


getHours() 返回小时


getMinutes() 返回分


getSeconds() 返回秒


getTime() 返回1970年1月1日至今的毫秒数


12、js中的RegRxp对象
正则表达式
创建方式:new RegExp("正则表达式")
var reg = /正则表达式/

test方法
使用:
var reg = new RegExp("[a]"); //声明一个正则表达式
var st = "dasd";
var f = reg.test(st); //判断里面是否匹配上了reg 返回一个Boolean值
document.write("<br/>");
document.write(f); //返回true
document.write("<br/>");
var r = /\d/; //正则表达式的第二种写法
document.write(r.test(st)); //返回false


13、js中的bom对象
1、window对象
var id1 = setInterval("alert('hahah');",3000); //每隔3000毫秒就执行一次
var id2 = setTimeout("alert('ssa')",1000); //隔1秒再执行,只执行一次

function onclick1(){
clearInterval(id1); //清除时间
}


function onclick2(){
clearTimeout(id2); //清除时间
}


2.navigator 浏览器信息
3.screen 屏幕信息
4.location
设置url
href 设置或返回完整的URL


14、js的全局变量和局部变量
如果在一个<script>中定义了变量,在页面中的其他Script中也可以使用
局部变量只能在方法里面使用


15、js全局函数
直接调用
eval()
var s = "alert('hhh')";
eval(s); //把字符串转换为js代码执行

isNaN() 检查值是否是数字
是就返回false 不是就返回true


parseInt() 解析一个字符串并返回一个整数


encodeURI() 把字符串编码为URI
document.write("<hr/>");
var a = "asd您很高";
document.write(encodeURI(a)); //编码


decodeURI() 解码某个编码的URI

document.write(decodeURI(encodeURI(a))); //解码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值