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 tools系列 expose 学习
Sep 06 Javascript
javascript实现的基于金山词霸网络翻译的代码
Jan 15 Javascript
鼠标焦点离开文本框时验证的js代码
Jul 19 Javascript
jQuery中:image选择器用法实例
Jan 03 Javascript
js代码实现随机颜色的小方块
Jul 30 Javascript
原生JS实现旋转木马式图片轮播插件
Apr 25 Javascript
jquery html5 视频播放控制代码
Nov 06 Javascript
jQuery实现点击某个div打开层,点击其他div关闭层实例分析(阻止冒泡)
Nov 18 Javascript
jquery.tableSort.js表格排序插件使用方法详解
Aug 12 Javascript
Javascript 实现匿名递归的实例代码
May 25 Javascript
Angular6新特性之Angular Material
Dec 28 Javascript
vue祖孙组件之间的数据传递案例
Dec 07 Vue.js
使用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 GD 图像处理组件的常用函数总结
2010/04/28 PHP
PHP中使用CURL伪造来路抓取页面或文件
2011/05/04 PHP
在windows服务器开启php的gd库phpinfo中未发现
2013/01/13 PHP
php中HTTP_REFERER函数用法实例
2014/11/21 PHP
javascript实现仿银行密码输入框效果的代码
2007/12/13 Javascript
实现超用户体验 table排序javascript实现代码
2009/06/22 Javascript
超赞的动手创建JavaScript框架的详细教程
2015/06/30 Javascript
D3.js封装文本实现自动换行和旋转平移等功能
2016/10/14 Javascript
获取jqGrid中选择的行的数据
2016/11/30 Javascript
bootstrap实现图片自动轮播
2016/12/21 Javascript
详解node HTTP请求客户端 - Request
2017/05/05 Javascript
React 组件中的 bind(this)示例代码
2018/09/16 Javascript
解决vue 单文件组件中样式加载问题
2019/04/24 Javascript
Koa从零搭建到Api实现项目的搭建方法
2019/07/30 Javascript
基于jsbarcode 生成条形码并将生成的条码保存至本地+源码
2020/04/27 Javascript
vue和小程序项目中使用iconfont的方法
2020/05/19 Javascript
Vue filter 过滤器、以及在table中的使用介绍
2020/09/07 Javascript
[43:33]EG vs Spirit Supermajor 败者组 BO3 第一场 6.4
2018/06/05 DOTA
使用IPython下的Net-SNMP来管理类UNIX系统的教程
2015/04/15 Python
python实现堆和索引堆的代码示例
2018/03/19 Python
Python 按字典dict的键排序,并取出相应的键值放于list中的实例
2019/02/12 Python
python根据文本生成词云图代码实例
2019/11/15 Python
python如何基于redis实现ip代理池
2020/01/17 Python
基于Tensorflow:CPU性能分析
2020/02/10 Python
Python numpy多维数组实现原理详解
2020/03/10 Python
深入了解python列表(LIST)
2020/06/08 Python
python导入库的具体方法
2020/06/18 Python
python Protobuf定义消息类型知识点讲解
2021/03/02 Python
html5服务器推送_动力节点Java学院整理
2017/07/12 HTML / CSS
html5基础教程常用技巧整理
2013/08/20 HTML / CSS
教师个人剖析材料
2014/02/05 职场文书
文明之星事迹材料
2014/05/09 职场文书
大学生奖学金获奖感言(范文)
2019/08/15 职场文书
Django migrate报错的解决方案
2021/05/20 Python
基于Python编写简易版的天天跑酷游戏的示例代码
2022/03/23 Python
HTML中实现音乐或视频自动播放案例详解
2022/05/30 HTML / CSS