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.效率问题:用好的.合适的算法(前端程序员要把自己当 ...
随机推荐
- ubuntu16.04 + ubuntu + apache2 配置apache解析php
给apache安装php扩展: sudo apt-get install libapache2-mod-php 注:这是apache解析php文件的关键,光修改配置文件不安装扩展是不起作用的. 目录 ...
- jq弹出一个透明小提示窗,然后逐渐消失
function show_main(content) { var showWindow = '<div id="show_main" style="borde ...
- javadoc相关问题
欢迎和大家交流技术相关问题: 邮箱: jiangxinnju@163.com 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://g ...
- html文件里引入文件html文件
导入通用的代码除了使用php外 iframe在很多界面使用起来比较方便 比如说要写导航 在好几个界面都要用这个导航 可以用iframe引用 实例:这个header.html是我写的一个导航界面 在in ...
- mysql通用包安装
mysql 版本: mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz 解压后的初始化: mysqld --defaults-file=/etc/my.cnf --us ...
- 如何用JS判断推广链接所属的客服
今天有一个客户提出一个需求:网站有多个在线客服,每个客服都有自己的网站推广链接,当访客通过该客服的推广链接进入网站时,必须指定由该客服接待. 我的实现思路是获取推广链接中特定字符,然后判断字符对应的客 ...
- ActionBar compat 如何禁用ActionBar的显示/隐藏动画
ActionBar compat 如何关闭ActionBar的显示隐藏动画 @Override public boolean onCreateOptionsMenu(Menu menu) { //消除 ...
- 网站整站下载工具—HTTrack Website Copier
HTTrack是一个免费和易用的离线浏览工具(浏览器),它可以允许你下载整个WWW网站至本地目录,并且通过遍历网站目录获取HTML,图片和其他文件,是安全渗透测试和居家旅行必备软件. WinHTTra ...
- php知识案列
n个不重复的随机数生成代码 <?php //range 是将1到100 列成一个数组 $numbers = range (1,100); //shuffle 将数组顺序随即打乱 shuffle ...
- applicationContext配置文件中的属性说明
lazy-init:设置只对scop属性为singleton的bean起作用. 1.true:延迟加载:这时在第一次向容器通过getBean索取bean时实例化的. 2.false:表示spring启 ...