js学习笔记(一)
来源:互联网 发布:bitspirit mac 编辑:程序博客网 时间:2024/06/05 01:09
Js的基本介绍
Js是用于web开发的脚本语言,常用来给html网页添加动态功能,比如响应用户的各种操作。
脚本语言是什么?
(1) 脚本语言往往不能独立使用,它和html/jsp/php/asp/asp.net配合使用才有意义。
(2) 脚本语言有自己的变量,函数,控制语句
(3) 脚本语言是解释型语言(和编译语言的区别是否生成目标代码)。
(4) 脚本语言一般都有相应的脚本引擎来解释执行,js的脚本引擎是浏览器。因为js是由浏览器来解释执行的,因此这里有一个问题,不同的类型的浏览器可以对js的支持不一样
案例1,需求,在打开网页后,显示helloworld
代码这里省略不写了从中引出的问题
①js的位置?可以随意
②js必须用<scriptlanguage=”javascript”><script>包起来,如果没有使用script包起来,则浏览器会将其视为普通文本。
③在一个html文件中(jsp/php/asp)可以出现多对script片段,浏览器会按照先后顺序依次执行。
案例2,对上个案例进行改进,让它成为一个简单的加分运算程序。
看点,
如何定义变量 js中变量用var来表示
如何运算
Js的变量类型究竟怎样决定
(1)js是弱数据类型语言
即在定义变量的时候,统一使用var表示即可,甚至去掉var也可以。
(2)js中变量的数据类型是由js引擎决定的
Js的函数
js为什么需要函数?
案例:输入两个数,在输入一个运算符(+,-,*,/),得到结果。
<scripttype="text/javascript">
var num;
var num1=parseInt(window.prompt("请输入第一个数"));
var num2=parseInt(window.prompt("请输入第二个数"));
var op=window.prompt("请输入运算符");
if(op=='+'){
num=num1+num2;
}else if(op=='-'){
num=num1-num2;
}else if(op=='*'){
num=num1*num2;
}else if(op=='/'){
num=num1/num2;
}
window.alert(num);
</script>
请思考如果在其它的html文件中也要完成该功能,怎么办呢?
解决方案——函数
为完成某一功能的程序指令,成为函数,在js中,函数分为自定义函数和系统函数
基本语法
function 函数名(参数列表){ 特别强调参数前不能带var
}
修改后代码
<scripttype="text/javascript">
functionjisuan(num1,num2,op){
var num;
if(op=='+'){
num=num1+num2;
}elseif(op=='-'){
num=num1-num2;
}elseif(op=='*'){
num=num1*num2;
}elseif(op=='/'){
num=num1/num2;
}
returnnum;
}varnum1=parseFloat(window.prompt("请输入第一个数"));
varnum2=parseFloat(window.prompt("请输入第二个数"));
varop=window.prompt("请输入运算符");
window.alert(jisuan(num1,num2,op));
</script>
如果其它的html文件要使用该函数又怎么办呢?
把上面的函数单独提出,写到js然后在需要的地方引入
<script language="javascript"src=" "/></script>
系统函数eval 需求把字符串str当成一个脚本来使用
var str="window.alert('ok')"
eval(str);
escape和unescape往往配合使用,防止乱码的出现。
函数的几种调用方式
1,函数名(传递给函数的参数1,传递给函数的参数2,。。。)
2,变量=函数名
此时变量就相当于函数的引用(指针),可以这样调用函数 变量(实际参数…)
如果写成了变量=函数名() 则把函数的返回值给变量,如果函数没有返回值则undefined
Js函数的调用过程,内存分析
案例:
functionabc(num1){
if(num1>3){
abc(--num1);
}
document.write(num1);
}
如果这样调用abc(5);则结果为334
函数——深入使用
①,函数的参数列表可以是多个,并且数据类型是任意的
②,js支持参数个数可变的函数
例:编写一个函数,可以接受任意多个数,并计算它们的和
在js中有一个arguments可以访问所有传入值
function a(){
var res=0;
for(var i=0;i<arguments.length;i++){
res+=arguments[i];
}
window.alert(res);
}
③,js支持创建动态函数
- js学习笔记(一)
- JS学习笔记一
- JS学习笔记一
- js学习笔记(一)
- JS学习笔记一
- js学习笔记(一)
- js学习笔记(一)
- js学习笔记一
- JS学习笔记(一)
- js 学习笔记 (一)
- js学习笔记(一)
- JS学习笔记(一)
- js学习笔记(一)
- js深入浅出学习笔记(一)
- Js学习笔记(一)
- JS学习笔记(一)
- js学习笔记(一)
- Angular.js学习笔记(一)
- cocos2d-x Tests讲解三:Particle System(粒子系统)
- [RTSP][2012-06-16] RTSP TEARDOWN
- Android Activity 全屏
- 大型ORACLE数据库优化设计方案
- 子串计算
- js学习笔记(一)
- 今天是个值得纪念的日子
- 端口
- 正确地做事与做正确的事同样重要
- Android系统的Binder机制
- Android禁止横屏竖屏切换
- Python备份CSDN博客
- C++的一些优化操作
- 安卓巴士Android开发神贴整理