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插件实现屏蔽单个元素使用户无法点击
Apr 12 Javascript
gridview生成时如何去掉style属性中的border-collapse
Sep 30 Javascript
jQuery中outerWidth()方法用法实例
Jan 19 Javascript
BootStrap入门教程(三)之响应式原理
Sep 19 Javascript
Vue input控件通过value绑定动态属性及修饰符的方法
May 03 Javascript
vue使用vue-cli快速创建工程
Jul 28 Javascript
Vue实现双向绑定的原理以及响应式数据的方法
Jul 02 Javascript
使用jquery模拟a标签的click事件无法实现跳转的解决
Dec 04 jQuery
vue 兄弟组件的信息传递的方法实例详解
Aug 30 Javascript
javascript删除数组元素的七个方法示例
Sep 09 Javascript
webpack 动态批量加载文件的实现方法
Mar 19 Javascript
JavaScript中时间格式化新思路toLocaleString()
Nov 07 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
对于ThinkPHP框架早期版本的一个SQL注入漏洞详细分析
2014/07/04 PHP
浅谈php正则表达式中的非贪婪模式匹配的使用
2014/11/25 PHP
PHP简单实现文本计数器的方法
2016/04/28 PHP
基于PHP实现的多元线性回归模拟曲线算法
2018/01/30 PHP
javascript中的对象创建 实例附注释
2011/02/08 Javascript
jquery选择checked在ie8普通模式下的问题
2014/02/12 Javascript
JavaScript的事件代理和委托实例分析
2015/03/25 Javascript
使用JavaScript刷新网页的方法
2015/06/04 Javascript
javascript实现将文件保存到本地方法汇总
2015/07/26 Javascript
jQuery对html元素的取值与赋值实例详解
2015/12/18 Javascript
JS实现禁止鼠标右键的功能
2016/10/15 Javascript
AngularJS Phonecat实例讲解
2016/11/21 Javascript
理解AngularJs篇:30分钟快速掌握AngularJs
2016/12/23 Javascript
vue.js 底部导航栏 一级路由显示 子路由不显示的解决方法
2018/03/09 Javascript
mpvue 如何使用腾讯视频插件的方法
2018/07/16 Javascript
JQuery获取元素尺寸、位置及页面滚动事件应用示例
2019/05/14 jQuery
VueCli3.0中集成MockApi的方法示例
2019/07/05 Javascript
layui 实现表单和文件上传一起传到后台的例子
2019/09/16 Javascript
JavaScript编码小技巧分享
2020/09/17 Javascript
[01:00:12]2018DOTA2亚洲邀请赛 4.7 淘汰赛 VP vs LGD 第一场
2018/04/09 DOTA
[43:47]完美世界DOTA2联赛PWL S3 LBZS vs Phoenix 第一场 12.09
2020/12/11 DOTA
举例讲解Python中的死锁、可重入锁和互斥锁
2015/11/05 Python
python二维列表一维列表的互相转换实例
2018/07/02 Python
对python借助百度云API对评论进行观点抽取的方法详解
2019/02/21 Python
在Pandas中处理NaN值的方法
2019/06/25 Python
django admin 添加自定义链接方式
2020/03/11 Python
利用python对mysql表做全局模糊搜索并分页实例
2020/07/12 Python
python openssl模块安装及用法
2020/12/06 Python
浅析与CSS3的loading动画加载相关的transition优化
2015/05/18 HTML / CSS
canvas 绘图时位置偏离的问题解决
2020/09/16 HTML / CSS
Omio法国:全欧洲低价大巴、火车和航班搜索和比价
2017/11/13 全球购物
销售员自我评价怎么写
2013/09/19 职场文书
合伙协议书范本
2014/04/21 职场文书
考试作弊检讨
2015/01/27 职场文书
2015年董事长秘书工作总结
2015/07/23 职场文书
创业计划书详解
2019/07/19 职场文书