JS 笔记(一)
1. 页面引入
1) 标签直接引入脚本(推荐):
<script type="text/javascript"> 脚本语言 </script>
2) 标签引入脚本文件(推荐):
<script type="text/javascript“ src=“path/xxx.js”></script>
注意: </script>结束标签不能简写为:
<script type="text/javascript“ src=“path/xxx.js”/> <!-- 错误 -->
好处:可跨域加载js文件、多页面共享、减少网络流量
说明:引用脚本文件时,由于js的加载时“阻塞”模式,所以需要等到js全部加载完成以后才会继续向后执行,所以如果对于性能要求比较高时,可考虑把js加载放到页面的最后,提高用户体验。
3) 协议引入脚本:
<a href="javascript: alert('...')">单击我</a>
2. 基本语法
1)注释:
<script type="text/javascript">
//单行 /*
多行注释
*/
</script> <!--<script type="text/javascript">...</script>-->
<!--只能注释整个script标签,当某些浏览器不支持JavaScript的时候,把<script></script>标签中的内容注释掉,这样就不会显示在浏览器上了。用IE1.5可以测试出效果。现在基本可以不考虑这个问题了-->
2) 变量:变量名必须由字母、数字、_和$组成,不能以数字开头
3)运算符:
a) + - * / %
b) 三元运算符
4)选择判断语句
a) if else 、switch case
b) switch判断相等时,是 “全等于(===)”
5)循环语句 - 循环遍历数组
for(var i=0;i<10;i++){ … }
for(var i in arr) { … }//此处的i表示的是数组的下标或键值对集合的键,而不是值
注意:
1)使用forin循环可以遍历对象的所有属性
2)Forin循环其实遍历的还是key
6)转义符
a) 常见转义符: \t、\n、\’、\”、\\
b) 输出:c:\windows\microsoft\vs.txt → alert(‘c:\\windows\\microsoft\\vs.txt’);不能用@,@只在C#中有效。
c) 在用正则表达式的时候也会遇到转义符问题。(*)
7)消息框
a) alert,弹出消息窗口
b) confirm,确定、取消对话框,返回true或false
c) prompt
<script type="text/javascript">
if(confirm("确定要继续吗?"))
{
//从键盘接收第一个值,注意使用prompt得到的值的类型是string字符串
var num1 = prompt("请输入第一个", "0");//IE8阻止了,窗口弹出
var num2 = prompt("请输入第二个", "0"); //需要做类型转换才能计算值,不然会做为字符串连接
alert(parseInt(num1) + parseInt(num2));
}
else
{
alert("到此结束");
}
</script>
8)异常:try{ ... }catch(error){ ... }
function funTest() {
try {
var num1 = prompt("请输入一个数字", "0");
if (isNaN(num1)) {
throw new Error("请输入数字");
}
alert(num1);
} catch (e) {
alert(e.Message);
return 1;
} finally {
alert("finally");
return 2;
}
}
var num = funTest();
alert(num); //此处永远是2
//throw主要用于抛出自定义异常,开发者自定义的异常包含的异常信息可能会更多更详细。
JS 笔记(一)的更多相关文章
- Data Visualization and D3.js 笔记(1)
课程地址: https://classroom.udacity.com/courses/ud507 什么是数据可视化? 高效传达一个故事/概念,探索数据的pattern 通过颜色.尺寸.形式在视觉上表 ...
- js笔记-0
#js笔记-0 数组: indexOf方法: Array也可以通过indexOf()来搜索一个指定的元素的位置: var arr = [10, 20, '30', 'xyz']; arr.indexO ...
- PPK谈JS笔记第一弹
以下内容是读书笔记,再一次温习JS好书:PPK谈JS window.load=initializePageaddEventSimple('window','load',function(){}) lo ...
- 面向小白的JS笔记 - #Codecademy#学习笔记
前言 最初浏览过<JavaScript秘密花园>,前一段时间读过一点点<JavaScript语言精粹>和一点点<JavaScript高级程序设计>(一点点是指都只是 ...
- require.js笔记
笔记参考来源:阮一峰 http://www.ruanyifeng.com/blog/2012/10/javascript_module.html 1. 浏览器端的模块只能采用“异步加载”方式 = ...
- JS笔记 入门第四
小测试: 注意:取消所有的设定可以直接使用 document.getElementById("txt").removeAttribute("style"); 这 ...
- JS笔记 入门第二
输出内容 document.write(); alert("hello!"); alert(mynum); </script> 注:alert弹出消息对话框(包含一个确 ...
- Node.js笔记1
Node.js入门笔记 1. node -help 可以显示帮助信息2. node REPL 模式(Read-eval-print loop) 输入—求值—输出循环 直接在cmd输入node 可以进入 ...
- JS笔记 入门第一
WHY? 一.你知道,为什么JavaScript非常值得我们学习吗? 1. 所有主流浏览器都支持JavaScript. 2. 目前,全世界大部分网页都使用JavaScript. 3. 它可以让网页呈现 ...
- 奇舞js笔记——第0课——如何写好原生js代码
摘要 1.好的代码职责要清晰,javscript不要用来操作样式: 2.API要设计的合理:通用性,适度的抽象(数据抽象,过程抽象),可扩展性: 3.效率问题:用好的.合适的算法(前端程序员要把自己当 ...
随机推荐
- Nginx模块之———— RTMP模块 统计某频道在线观看流的客户数
获得订阅者人数,可以方便地显示观看流的客户数. 查看已经安装好的模块 /usr/local/nginx/sbin/nginx -V 安装从源编译Nginx和Nginx-RTMP所需的工具 sudo a ...
- leveldb 学习。
1)大概浏览了leveldb文档的介绍.本想逐步看代码,想想还是自己先实现一个看看如何改进. 2)完成了一个非常丑陋的初版,但是还是比初初版有进步. 3)key value的数据库,不允许有key重复 ...
- php使用PDO连接mysql数据库
<?php $dsn='mysql:host=localhost;dbname=mssc'; $user='root'; $password=''; $status=1; try { $sql= ...
- c/c++中两颗璀璨的明珠
1.指针: 函数指针做函数参数 回调函数 语法现象 意义 实现什么效果 (1).间接赋值成立的三个条件 a.两个变量 b.建立关联 c. *p-> (2).函数指针做函数参数 a.调用的角度去理 ...
- angular中动态添加的元素绑定事件问题
$compile http://segmentfault.com/q/1010000000726448/a-1020000000727088 接口下载问题
- python——django使用mysql数据库(二)
上一篇中,我们已经讲述了如何初始化一个django数据库,这一章就来讲讲在实际的项目中如何使用我们初始化的数据库呢? 如还未进行初始化数据库操作,请参考python——django使用mysql数据库 ...
- Linux教程:Bash技巧,让chmod只修改某个目录下文件夹或者文件的权限
用Linux的人都知道chmod -R 可以修改一个文件夹下的所有文件和文件夹的权限,但是这也存在着一个很大的弊端,那就是修改的是所有的文件和文件夹的权限,如果我只想修改文件或文件夹的权限该怎么办呢? ...
- Sql Server 删除所有表(转)
http://www.cnblogs.com/jys509/p/3589468.html 首先必须要清空所有表的外键 DECLARE c1 cursor for select 'alter tabl ...
- SQL server 查询某个表在哪些存储过程(SP)中使用到
1.查询某个表被哪些存储过程(以下简称 SP)使用到 : select distinct object_name(id) from syscomments where id in (select ob ...
- discuz手机版模板开发
1.触屏版模板手机路径 discuz X3触屏版模板路径:/template/default/touch/forum/discuz.htm(主页面模板) discuz X3标准版模板路径:/templ ...