2.js基础
4.函数
1)函数是一段完成“指定功能”的已经“命名”的代码段
2)函数只有“调用”才能使用到,调用就是通过名称(可以在声明之前,也可以在声明之后)
3)函数名、参数、函数体、返回值(没有返回值的函数叫过程)
return跳出函数体
4)函数名不加括号时代表整个函数,加括号代表调用
typeof(函数名)的值为function
var 变量=函数名;那么变量就代表了这个函数
5)回调函数相当于函数有一个参数是一个函数。
5.自定义函数
1)全局变量:在函数外声明的变量,变量一直可以用,直到关闭浏览器
2)局部变量:在函数内声明的变量,函数调用完成就释放掉
3)如果函数定义时,形参个数大于调用时传进去的实参个数,那么会出现参数未定义的情况undefined
如:(意思就是只要写函数名不管传不传参数都会去调用这个函数)
function test(a,b,c){
alert(a);
alert(b);
alert(c);
}
test();
如果实参个数大于形参,可以用arguments取出参数
function test(){
alert(arguments.length);
alert(arguments[3]);
}
test(1,2,3,4,5,6,7,8,9)
4.JS是基于对象的;Window和global对象的函数可以直接使用
如:window.alert();
global.escape();对字符串进行编码
global.unescape();对字符串进行解码
global.praseInt();字符串转成整数
global.isNaN();判断是否不是整数
global.eval();检验是否是js代码并执行
5.JS对象
1)基于对象的操作方式
2)将相关的操作使用一个对象完成,看做一个整体
字符串对象
数学对象
数组对象
时间对象
var dt = new Date();
var str="今天是:";
str+=dt.getYear()+"年";
str+=(dt.getMonth()+1)+"月";//月份从0开始,所以要加1
str+=dt.getDate()+"日";
3)自定义对象
方法1-1:
function Play(){ //与定义函数一样
}
var p= new Play(); //用new定义一个对象
p.width=300;
p.height=200;
p.num=4;
p.autoplay=function(){
alert("play...");
}
p.test=function(){
}
alert(p.width);
p.autoplay();
方法1-2:
var p= new Object(); //用new定义一个对象 p.width=300;
p.height=200;
p.num=4; p.autoplay=function(){
alert("play...");
} p.test=function(){
} alert(p.width);
p.autoplay();
方法2:
function Play(){ //与定义函数一样
var p= new Object(); //用new定义一个对象
p.width=300;
p.height=200;
p.num=4;
p.autoplay=function(){
alert("play...");
}
p.test=function(){
}
return p;
}
var p=Play();
alert(p.width);
p.autoplay();
方法3:
function Play(width,height){
this.width=width;
this.height=height;
this.autoplay=function(){
alert("####");
}
}
var p=new Play(200,400);
alert(p.width);
alert(p.autoplay());
var pro="";
for(pro in p){
alert(pro);//会弹出属性名如:width、height
alert(p[pro]);//弹出属性值
}
对象的两种操作:
with(对象){
括号里面的方法不加对象都是括号里对象的方法
}
for(pro in 对象){//遍历对象的属性
alert(pro);//会弹出属性名如:width、height
alert(对象[pro]);//弹出属性值
}
6.JS内置对象
1)Math不用new对象,直接Math.方法名
2)正则
var zz=/^\S+$/i;
var zz =new Regex("^\S+$","i");
用在String.match方法里做匹配
3)String
4)Date
5)数组
7.数组的声明与应用
1)只要是批量的数据都需要使用数组声明
2)数组声明:
(一)var 数组名=[元素1,元素2,元素3,元素4,......]
var arrs=[['111','222'],['333','444']];
(二) var arr=new Array("成员","成员2");
var arr=new Array(10);//定义长度为10的数组
3)数组的方法
sort
2.js基础的更多相关文章
- js 基础篇(点击事件轮播图的实现)
轮播图在以后的应用中还是比较常见的,不需要多少行代码就能实现.但是在只掌握了js基础知识的情况下,怎么来用较少的而且逻辑又简单的方法来实现呢?下面来分析下几种不同的做法: 1.利用位移的方法来实现 首 ...
- js 基础
js基础知识点总结 如何在一个网站或者一个页面,去书写你的js代码:1.js的分层(功能):jquery(tool) 组件(ui) 应用(app),mvc(backboneJs)2.js的规划():避 ...
- js基础练习二之简易日历
今天学到了js基础教程3,昨天的课后练习还没来的及做,这个是类似简易日历的小案例,视频还没听完,今晚继续...... 先看效果图: 其实做过前面的Tab选项卡,这个就很好理解了,通过鼠标放在不同月份月 ...
- [JS复习] JS 基础知识
项目结尾,空闲时间,又把<JS 基础知识> 这本书过了一遍,温故知新后,很多知其然不知其所以然的内容 豁然开朗. [1. 用于范围的标签] display :inline or bloc ...
- JS基础(超级简单)
1 JS基础(超级简单) 1.1 数据类型 1.1.1 基本类型: 1) Number:特别注意:NaN的检测方法:Nan!=NaN;或者使用isNaN方法 2) ...
- Node.js基础与实战
Node.js基础与实战 Node.jsJS高级进阶 NODE原理与解析 REPL交互环境 模块与NPM Buffer缓存区 fs文件操作 Stream流 TCP&UDP 异步编程 HTTP& ...
- js基础到精通全面教程--JS教程
适合阅读范围:对JavaScript一无所知-离精通只差一步之遥的人 基础知识:HTML JavaScript就这么回事1:基础知识 1 创建脚本块 1: <script language=”J ...
- JS基础知识总结
js基础知识点总结 如何在一个网站或者一个页面,去书写你的js代码:1.js的分层(功能):jquery(tool) 组件(ui) 应用(app),mvc(backboneJs)2.js的规划() ...
- js基础篇——call/apply、arguments、undefined/null
a.call和apply方法详解 call方法: 语法:call([thisObj[,arg1[, arg2[, [,.argN]]]]]) 定义:调用一个对象的一个方法,以另一个对象替换当前对象 ...
- js基础知识总结(2016.11.1)
js基础知识点总结 如何在一个网站或者一个页面,去书写你的js代码:1.js的分层(功能):jquery(tool) 组件(ui) 应用(app),mvc(backboneJs)2.js的规划():避 ...
随机推荐
- ArcGIS Portal 10.4 本地坐标系的web 3d地形展示制作说明
原文:ArcGIS Portal 10.4 本地坐标系的web 3d地形展示制作说明 ArcGIS Portal 10.4 本地坐标系的web 3d地形展示制作说明 By 李远祥 ArcGIS Por ...
- ArcGIS API for Silverlight动态标绘的实现
原文:ArcGIS API for Silverlight动态标绘的实现 1.下载2个dll文件,分别是: ArcGISPlotSilverlightAPI.dll 和 Matrix.dll 其下载地 ...
- 关于前后台交互生成json区别
如何返回[object{xx:{}}]这种数组型json在服务器端return $arr[]=m;像这种都可以产生[Object { 0="9", 1="8", ...
- Set Java Proxy for Http/Https
Command Line JVM Settings The proxy settings are given to the JVM via command line arguments: java ...
- Mysql-5.6.30卸载
Mysql-5.6.30卸载 一.删除相关文件 rm -rf /var/lib/mysql/mysql (删除数据文件) rm -f /root/.mysql_secure (删除缺 ...
- 使用Fiddler对android应用抓包
工作原理 先上个图 此图一目了然,可以看出fiddler在请求中所处的位置,我们就可以确定它能干些什么. 它实际工作在本机的8888端口http代理,我们启动fiddler时,它会自动更改代理设置: ...
- 这是我定位的Bug
https://github.com/danielgindi/ios-charts/issues/406
- LUA闭包概念演示
闭包的一个重要场景,形成一个自治的环境, 让操作可以封闭运行, 即函数运行时有状态的,可以从闭包创建时候的环境独立开来. 例如下面的lua闭包, genFilter 其入参parmIn是 函数的内部变 ...
- Android Support Font 安卓系统支持字体(配图)
测试了一台安卓机器,发现所有字体显示都一样.
- 树形DP+二分(Information Disturbing HDU3586)
题意:给出一颗数,1结点代表司令部,叶子节点代表前线,边全值代表花费,然后需要在某些边放置一些炸弹,炸弹的能量不能小于该边的费用,且炸掉的总费用不能超过m问炸弹能力最小多少, 分析dfs+二分,二分枚 ...