容易忽略的javascript知识点的总结
/** 对代码行进行折行 **/
您可以在文本字符串中使用反斜杠对代码行进行换行。下面的例子会正确地显示:
document.write("Hello \
World!");
不过,您不能像这样折行:
document.write \
("Hello World!");
/** value = undefined **/
在计算机程序中,经常会声明无值的变量。未使用值来声明的变量,其值实际上是 undefined。
在执行过以下语句后,变量 carname 的值将是 undefined:
var carname;
/** 重新声明 JavaScript 变量**/
如果重新声明 JavaScript 变量,该变量的值不会丢失:
在以下两条语句执行后,变量 carname 的值依然是 "Volvo":
var carname="Volvo";
var carname;
/** JavaScript 数据类型 **/
字符串、数字、布尔、数组、对象、null、undefined
undefined 和 null
undefined 这个值表示变量不含有值。
可以通过将变量的值设置为 null 来清空变量。
/** 创建 JavaScript 对象 **/
创建新对象有两种不同的方法:
1.定义并创建对象的实例
person=new Object();
person.firstname="Bill";
person.lastname="Gates";
person.age=56;
person.eyecolor="blue";
或者
person={firstname:"John",lastname:"Doe",age:50,eyecolor:"blue"};
2.使用函数来定义对象,然后创建新的对象实例
本例使用函数来构造对象:
function person(firstname,lastname,age,eyecolor)
{
this.firstname=firstname;
this.lastname=lastname;
this.age=age;
this.eyecolor=eyecolor;
}
/** 对象属性有两种寻址方式 **/
name=person.lastname;
name=person["lastname"];
/** 向未声明的 JavaScript 变量来分配值 **/
如果您把值赋给尚未声明的变量,该变量将被自动作为全局变量声明。
这条语句:
carname="Volvo";
将声明一个全局变量 carname,即使它在函数内执行。
/** Throw 语句 **/
本例检测输入变量的值。如果值是错误的,会抛出一个异常(错误)。catch 会捕捉到这个错误,并显示一段自定义的错误消息:
<script>
function myFunction()
{
try
{
var x=document.getElementById("demo").value;
if(x=="") throw "empty";
if(isNaN(x)) throw "not a number";
if(x>10) throw "to high";
if(x<5) throw "too low";
}
catch(err)
{
var y=document.getElementById("mess");
y.innerHTML="Error: " + err + ".";
}
}
</script>
/** JavaScript 中的所有数字都存储为根为 10 的 64 位(8 比特),浮点数。 **/
精度
整数(不使用小数点或指数计数法)最多为 15 位。
小数的最大位数是 17,但是浮点运算并不总是 100% 准确:
/** Math.floor() **/
数学函数,求一个浮点数的地板,就是求一个最接近它的整数,它的值小于或等于这个浮点数。
/** Window 尺寸 **/
该例显示浏览器窗口的高度和宽度:(不包括工具栏/滚动条)(涵盖所有浏览器):
var w=window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
var h=window.innerHeight|| document.documentElement.clientHeight|| document.body.clientHeight;
最新文章
- 前端利器---Bootstrap
- HDU1001 关于累加公式的隐性类型转换
- linux &#160; 截取时间段的日志
- 查看linux版本号的几种方法
- Jsp指令有那些?
- javascript实现验证身份证号的有效性并提示
- HTTP缓存控制总结
- Nancy基于JwtBearer认证的使用与实现
- 如何将ASP.NET-WebApi发布到IIS6.0上(转)
- 使用SpringBoot开发REST服务
- (七十一)关于UITableView退出崩溃的问题和滚动到底部的方法
- 小小知识点(十三)——MATLAB中怎么保存和读取.mat文件
- 最短路径问题---Dijkstra算法详解
- 使用POI读写word docx文件
- 【转】Python之日期与时间处理模块(date和datetime)
- CF113D 高斯消元、dp
- Struts框架的数据封装二之模型驱动方式
- 通过android studio上传项目到github
- Eclipse Git 克隆项目的时候出现Internal error; consult Eclipse error log
- Flink初始
热门文章
- 清北学堂dp图论营游记day2
- JavaWeb--ServletContext
- C# IIS域名绑定
- java 项目 文件关系 扫描 注释注入
- Codeforces #499 E Border ( 裴蜀定理 )
- HDU 6444 Neko&#39;s loop ( 2018 CCPC 网络赛 &;&; 裴蜀定理 &;&; 线段树 )
- 在vue项目中添加一个html页面,开启本地服务器
- HDU 5249:KPI(权值线段树)
- 微信小程序_(map)简单的小地图
- scala实战学习-快速排序