Javascript 类型转换、封闭函数及常见内置对象操作示例


Posted in Javascript onNovember 15, 2019

本文实例讲述了Javascript 类型转换、封闭函数及常见内置对象。分享给大家供大家参考,具体如下:

Javascript组成

1、ECMAscript javascript的语法(变量、函数、循环语句等语法)
2、DOM 文档对象模型 操作html和css的方法
3、BOM 浏览器对象模型 操作浏览器的一些方法

类型转换

1、直接转换 parseInt() 与 parseFloat()

alert('12'+7); //弹出127
alert( parseInt('12') + 7 ); //弹出19 
alert( parseInt(5.6)); // 弹出5
alert('5.6'+2.3); // 弹出5.62.3
alert(parseFloat('5.6')+2.3); // 弹出7.8999999999999995
alert(0.1+0.2); //弹出 0.3000000000000004
alert((0.1*100+0.2*100)/100); //弹出0.3
alert((parseFloat('5.6')*100+2.3*100)/100); //弹出7.9

2、隐式转换 “==” 和 “-”

if('3'==3)
{
  alert('相等');
}
// 弹出'相等'
alert('10'-3); // 弹出7

3、NaN 和 isNaN

alert( parseInt('123abc') ); // 弹出123
alert( parseInt('abc123') ); // 弹出NaN

调试程序的方法

1、alert

2、console.log

3、document.title

变量作用域

变量作用域指的是变量的作用范围,javascript中的变量分为全局变量和局部变量。

1、全局变量:在函数之外定义的变量,为整个页面公用,函数内部外部都可以访问。
2、局部变量:在函数内部定义的变量,只能在定义该变量的函数内部访问,外部无法访问。

<script type="text/javascript">
  //全局变量
  var a = 12;
  function myalert()
  {
    //局部变量
    var b = 23;
    alert(a);
    alert(b);
  }
  myalert(); //弹出12和23
  alert(a); //弹出12  
  alert(b); //出错
</script>

封闭函数

封闭函数是javascript中匿名函数的另外一种写法,创建一个一开始就执行而不用命名的函数。

一般定义的函数和执行函数:

function myalert(){
  alert('hello!');
};
myalert();

封闭函数:

(function myalert(){
  alert('hello!');
})();

还可以在函数定义前加上“~”和“!”等符号来定义匿名函数

!function myalert(){
  alert('hello!');
}()

封闭函数的好处

封闭函数可以创造一个独立的空间,在封闭函数内定义的变量和函数不会影响外部同名的函数和变量,可以避免命名冲突,在页面上引入多个js文件时,用这种方式添加js文件比较安全,比如:

var iNum01 = 12;
function myalert(){
  alert('hello!');
}
(function(){
  var iNum01 = 24;
  function myalert(){
    alert('hello!world');
  }
  alert(iNum01);
  myalert()
})()
alert(iNum01);
myalert();

常用内置对象

1、document

document.getElementById //通过id获取元素
document.getElementsByTagName //通过标签名获取元素
document.referrer //获取上一个跳转页面的地址(需要服务器环境)

2、location

window.location.href //获取或者重定url地址
window.location.search //获取地址参数部分
window.location.hash //获取页面锚点或者叫哈希值

3、Math、

Math.random 获取0-1的随机数
Math.floor 向下取整
Math.ceil 向上取整

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码运行效果。

更多关于JavaScript相关内容可查看本站专题:《JavaScript常用函数技巧汇总》、《javascript面向对象入门教程》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
window.showModalDialog使用手册
Jan 11 Javascript
JavaScript类和继承 constructor属性
Mar 04 Javascript
jquery不会自动回收xmlHttpRequest对象 导致了内存溢出
Jun 18 Javascript
8个实用的jQuery技巧
Mar 04 Javascript
通过Jquery的Ajax方法读取将table转换为Json
May 31 Javascript
Jquery弹出层插件ThickBox的使用方法
Dec 09 Javascript
JavaScript原生对象之Number对象的属性和方法详解
Mar 13 Javascript
80%应聘者都不及格的JS面试题
Mar 21 Javascript
JS设计模式之状态模式概念与用法分析
Feb 05 Javascript
Vue.js中的extend绑定节点并显示的方法
Jun 20 Javascript
vue移动端弹起蒙层滑动禁止底部滑动操作
Jul 22 Javascript
使用react+redux实现计数器功能及遇到问题
Jun 02 Javascript
JavaScript定时器常见用法实例分析
Nov 15 #Javascript
解决Layui 表格自适应高度的问题
Nov 15 #Javascript
layui前端时间戳转化实例
Nov 15 #Javascript
JavaScript变量基本使用方法实例分析
Nov 15 #Javascript
JavaScript字符串处理常见操作方法小结
Nov 15 #Javascript
layui数据表格重载实现往后台传参
Nov 15 #Javascript
JS实现贪吃蛇游戏
Nov 15 #Javascript
You might like
关于Appserv无法打开localhost问题的解决方法
2009/10/16 PHP
php中经典方法实现判断多维数组是否为空
2011/10/23 PHP
php显示页码分页类的封装
2017/06/08 PHP
PHP文字转图片功能原理与实现方法分析
2017/08/31 PHP
jQuery html() in Firefox (uses .innerHTML) ignores DOM changes
2010/03/05 Javascript
javascript版的in_array函数(判断数组中是否存在特定值)
2014/05/09 Javascript
JS实现横向与竖向两个选项卡Tab联动的方法
2015/09/27 Javascript
angular.fromJson与toJson方法用法示例
2017/05/17 Javascript
移动端触摸滑动插件swiper使用方法详解
2017/08/11 Javascript
Validform验证时可以为空否则按照指定格式验证
2017/10/20 Javascript
Node.js创建HTTP文件服务器的使用示例
2018/05/11 Javascript
vuejs 切换导航条高亮(路由菜单高亮)的方法示例
2018/05/29 Javascript
JavaScript 正则命名分组【推荐】
2018/06/07 Javascript
Vue中的methods、watch、computed的区别
2018/11/26 Javascript
Electron 如何调用本地模块的方法
2019/02/01 Javascript
[01:25:09]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS DT第二场
2014/05/24 DOTA
[46:21]Liquid vs LGD 2018国际邀请赛淘汰赛BO3 第一场 8.23
2018/08/24 DOTA
Python多线程编程(四):使用Lock互斥锁
2015/04/05 Python
用Python登录Gmail并发送Gmail邮件的教程
2015/04/17 Python
浅谈Python数据类型之间的转换
2016/06/08 Python
Sanic框架流式传输操作示例
2018/07/18 Python
解决python 读取 log日志的编码问题
2019/12/24 Python
在Pytorch中计算卷积方法的区别详解(conv2d的区别)
2020/01/03 Python
Python迭代器Iterable判断方法解析
2020/03/16 Python
解决keras使用cov1D函数的输入问题
2020/06/29 Python
python3跳出一个循环的实例操作
2020/08/18 Python
中国专业的综合网上购物商城:京东
2016/08/02 全球购物
YOOX美国官方网站:全球著名的多品牌时尚网络概念店
2016/09/11 全球购物
澳大利亚在线批发商:Simply Wholesale
2021/02/24 全球购物
学校消防安全制度
2014/01/30 职场文书
党员自我对照检查材料
2014/08/19 职场文书
第二批党的群众路线教育实践活动总结报告
2014/10/30 职场文书
雨花台导游词
2015/02/06 职场文书
Spark SQL 2.4.8 操作 Dataframe的两种方式
2021/10/16 SQL Server
口袋妖怪冰系十大最强精灵,几何雪花排第七,第六类似北极熊
2022/03/18 日漫
SpringCloud超详细讲解Feign声明式服务调用
2022/06/21 Java/Android