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 相关文章推荐
JavaScript 语言的递归编程
May 18 Javascript
33个优秀的 jQuery 图片展示插件分享
Mar 14 Javascript
鼠标焦点离开文本框时验证的js代码
Jul 19 Javascript
JS实现适合于后台使用的动画折叠菜单效果
Sep 21 Javascript
文本框只能输入数字的实现方法(兼容IE火狐)
Jun 25 Javascript
angular中的http拦截器Interceptors的实现
Feb 21 Javascript
AngularJs每天学习之总体介绍
Aug 07 Javascript
vue实现商城上货组件简易版
Nov 27 Javascript
解决在Bootstrap模糊框中使用WebUploader的问题
Mar 22 Javascript
利用Vconsole和Fillder进行移动端抓包调试方法
Mar 05 Javascript
vue获取form表单的值示例
Oct 29 Javascript
node.js爬虫框架node-crawler初体验
Oct 29 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
php下载远程文件类(支持断点续传)
2008/11/14 PHP
php简单的会话类代码
2011/08/08 PHP
深入分析php中接口与抽象类的区别
2013/06/08 PHP
PHP设计模式之解释器模式的深入解析
2013/06/13 PHP
Yii2创建表单(ActiveForm)方法详解
2016/07/23 PHP
php cli模式下获取参数的方法
2017/05/05 PHP
tp5实现微信小程序多图片上传到服务器功能
2018/07/16 PHP
PhpStorm 如何优雅的调试Hyperf的方法步骤
2019/11/24 PHP
window.open关于浏览器拦截问题分析及解决方法
2013/02/05 Javascript
Bootstrap每天必学之简单入门
2015/11/19 Javascript
node.js 中国天气预报 简单实现
2016/06/06 Javascript
基于ajax与msmq技术的消息推送功能实现代码
2016/12/26 Javascript
js登录滑动验证的实现(不滑动无法登陆)
2018/01/03 Javascript
微信小程序页面生命周期详解
2018/01/31 Javascript
Javascript实现运算符重载详解
2018/04/07 Javascript
vue-video-player 通过自定义按钮组件实现全屏切换效果【推荐】
2018/08/29 Javascript
JavaScript中AOP的实现与应用
2019/05/06 Javascript
javascript实现贪吃蛇小游戏
2020/07/28 Javascript
jdk1.8+vue elementui实现多级菜单功能
2020/09/24 Javascript
[35:26]DOTA2上海特级锦标赛B组小组赛#2 VG VS Fnatic第三局
2016/02/26 DOTA
python模拟新浪微博登陆功能(新浪微博爬虫)
2013/12/24 Python
Python针对给定列表中元素进行翻转操作的方法分析
2018/04/27 Python
基于python实现学生管理系统
2018/10/17 Python
python之消除前缀重命名的方法
2018/10/21 Python
提升Python程序性能的7个习惯
2019/04/14 Python
解决jupyter notebook 出现In[*]的问题
2020/04/13 Python
django 连接数据库出现1045错误的解决方式
2020/05/14 Python
Python如何对齐字符串
2020/07/30 Python
Pandas中两个dataframe的交集和差集的示例代码
2020/12/13 Python
利用CSS3的checked伪类实现OL的隐藏显示的方法
2010/12/18 HTML / CSS
经管应届生求职信
2013/11/17 职场文书
贷款承诺书范文
2014/05/19 职场文书
秋季运动会广播稿(30篇)
2014/09/13 职场文书
鲁冰花观后感
2015/06/10 职场文书
MySQL通过binlog恢复数据
2021/05/27 MySQL
mysql 生成连续日期及变量赋值
2022/03/20 MySQL