javascipt基础内容--需要注意的细节


Posted in Javascript onApril 10, 2013

javascipt-基础---细节需要注意的地方:

1、特殊数值:NaN、Infinity、isNaN()、isFinite()

NaN:

var a=parseInt('a123');
window.alert(a); //输出NaN

Infinity:

window.alert(6/0);//输出Infinity 无穷大(最好不要这样写)

isNaN():判断是不是数,不是数返回true,是数返回false

var a="dd";
window.alert(isNaN(a)); //返回true

isFinite():用于判断是不是无穷大。如果 number 是 NaN(非数字),或者是正、负无穷大的数,则返回 false。

window.alert(isFinite(6/1)); //返回true
window.alert(isFinite(6/0)); //返回false

2、逻辑运算符:

在逻辑运算中,0、""、false、null、undefined、NaN均表示false

(或 || )|| 将返回第一个不为false 那个值(对象亦可),或者是最后一个值(如果全部都是false的话)

这个知识点在javascript框架中运用很多。

a、

var a=true;
var b=false;
var c=b || a;
window.alert(c); //输出true

b、

var a=2;
var b=0
var c= a || b;
window.alert(c); //返回第一个值,输出2

c、

var a=false;
var b="";
var c =0;
var d =new Object(); //对象
var aa=a || b || c ||d ; //a,b,c 全是false 这返回d
window.alert(aa); //返回d (对象)

4、多分支 switch

var flag=1;
switch(flag){
default:
window.alert("啥都不是");
case 'a':
window.alert("a");
case 'b':
window.alert("b"); //没有break语句,没有匹配成功, 此时结果都输出
}
var flag=1;
switch(flag){
default:
window.alert("啥都不是");
case 'a':
window.alert("a");
case 1:
window.alert("b"); //没有break语句 当匹配成功则不再找break语句 此时输出b
}

5、函数调用

func.js

function abc(val){window.alert("abc()"+val);
}

//有返回值的函数
function test(num1,num2){
var res=0;
res =num1+num2;
return res;
}
//没有返回值的的函数
function noVal(num1,num2){
var res=0;
res=num1+num2;
}

函数调用:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<script type="text/javascript" src="func.js"></script>
<script type="text/javascript">//函数调用1---普通调用(常用调用函数)
abc(50);

//函数调用2---变量=函数名; 调用的时候这样调用:变量(实际参数)
var test1=abc; //此时变量就相当于函数的引用(指针)
window.alert(abc); //输出abc整个函数代码,就能理解了
test1(500);
//如果调用的函数有返回值,可以在程序中直接返回,没有返回值但是你接收了,这是返回undefined
//调用有返回值的函数
var res=test(20,40);
window.alert(res); 
//调用没有返回值的函数
window.alert("调用没有返回值的函数");
var res=noVal(1,1);
//此时输出undefined
window.alert(res);
</script>
</head>
<body></body>
</html>

js支持参数个数可变的函数

<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<script type="text/javascript" src="func.js"></script>
<script type="text/javascript">
//函数调用--递归
/* function abc(num){
if(num>3){
abc(--num);
}
document.writeln(num);
}
//调用函数
abc(5); //输出 3 3 4
*/
//js支持参数个数可变的函数 
function abc(){
//js中提供了一个arguments,可以访问所以传入的值
window.alert(arguments.length); //传入多少个
//遍历传入的参数
for(var i=0;i<arguments.length;i++){
window.alert(arguments[i]);
}
}
//调用
window.alert("abc(12,13,\"hello\",56)");
abc(12,13,"hello",56)
window.alert("abc(5)");
abc(5);
window.alert("abc()");
abc();
</script>
</head>
<body></body>
</html>
Javascript 相关文章推荐
jquery模拟按下回车实现代码
Sep 20 Javascript
js实现表格字段排序
Feb 19 Javascript
script标签属性用type还是language
Jan 21 Javascript
用JS中split方法实现彩色文字背景效果实例
Aug 24 Javascript
js 判断登录界面的账号密码是否为空
Feb 08 Javascript
JS高仿抛物线加入购物车特效实现代码
Feb 20 Javascript
html+javascript+bootstrap实现层级多选框全层全选和多选功能
Mar 09 Javascript
深入理解ES6 Promise 扩展always方法
Sep 26 Javascript
Vue 无限滚动加载指令实现方法
May 28 Javascript
小程序使用wxs解决wxml保留2位小数问题
Dec 13 Javascript
基于JS正则表达式实现模板数据动态渲染(实现思路详解)
Mar 07 Javascript
利用js实现简易红绿灯
Oct 15 Javascript
使用javascipt---实现二分查找法
Apr 10 #Javascript
页面使用密码保护代码
Apr 10 #Javascript
jQuery学习笔记(4)--Jquery中获取table中某列值的具体思路
Apr 10 #Javascript
提示$ is not defined错误分析及解决
Apr 09 #Javascript
js 有框架页面跳转(target)三种情况下的应用
Apr 09 #Javascript
关于textarea提交的内容无法换行的解决办法
Apr 09 #Javascript
关于JQuery($.load)事件的用法和分析
Apr 09 #Javascript
You might like
苏联队长,苏联超人蝙蝠侠,这些登场的“山寨”英雄真的很严肃
2020/04/09 欧美动漫
php下将XML转换为数组
2010/01/01 PHP
PHP FOR MYSQL 代码生成助手(根据Mysql里的字段自动生成类文件的)
2011/07/23 PHP
新手学习PHP的一些基础知识分享
2011/07/27 PHP
PHP 通过Socket收发十六进制数据的实现代码
2013/08/16 PHP
php使用PDO事务配合表格读取大量数据插入操作实现方法
2017/02/16 PHP
PHP Redis扩展无法加载的问题解决方法
2019/08/22 PHP
php实现断点续传大文件示例代码
2020/06/19 PHP
分享Javascript中最常用的55个经典小技巧
2013/11/29 Javascript
Javascript Memoizer浅析
2014/10/16 Javascript
jQuery中even选择器的定义和用法
2014/12/23 Javascript
jQuery中parentsUntil()方法用法实例
2015/01/07 Javascript
javascript伸缩型菜单实现代码
2015/11/16 Javascript
js实现兼容IE、Firefox的图片缩放代码
2015/12/08 Javascript
JavaScript数据结构与算法之栈与队列
2016/01/29 Javascript
动态JavaScript所造成一些你不知道的危害
2016/09/25 Javascript
html+javascript+bootstrap实现层级多选框全层全选和多选功能
2017/03/09 Javascript
JavaScript之Canvas_动力节点Java学院整理
2017/07/04 Javascript
JavaScript中正则表达式判断匹配规则及常用方法
2017/08/03 Javascript
微信小程序 同步请求授权的详解
2017/08/04 Javascript
Vue-Router实现组件间跳转的三种方法
2017/11/07 Javascript
Vue项目中跨域问题解决方案
2018/06/05 Javascript
JS+php后台实现文件上传功能详解
2019/03/02 Javascript
手把手教你 CKEDITOR 4 实现Dialog 内嵌 IFrame操作详解
2019/06/18 Javascript
JS实现可以用键盘方向键控制的动画
2020/12/11 Javascript
[03:17]史诗级大片应援2018DOTA2国际邀请赛 致敬每一位坚守遗迹的勇士
2018/07/20 DOTA
Python pymongo模块常用操作分析
2018/09/01 Python
python看某个模块的版本方法
2018/10/16 Python
在python中按照特定顺序访问字典的方法详解
2018/12/14 Python
浅谈Python 列表字典赋值的陷阱
2019/01/20 Python
记一次python 爬虫爬取深圳租房信息的过程及遇到的问题
2020/11/24 Python
自我评价优秀范文分享
2013/11/30 职场文书
工程招投标邀请书
2014/01/30 职场文书
企业年会主持词
2014/03/27 职场文书
保护环境演讲稿
2014/05/10 职场文书
python随机打印成绩排名表
2021/06/23 Python