步步为营-53-JavaScript
说明 :JS比较常用
1.1 常见的两种使用方式:
1.1.1 直接使用 <script>alert('Hello,World')</script>
1.1.2 引用js文件 <script src="JS/JSHelloWorld.js"></script>
1.2 一个简单实例
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<script>
//01-定义方法
function showTime() {
var date = new Date();
alert(date.toLocaleTimeString());
//可以让超连接跳转不执行
return false;
}
</script>
</head>
<body>
<input type="button" value="显示当前时间" onclick="showTime();"/>
<a href="#" onclick="showTime();">显示当前时间</a>
<a href="javascript:showTime();">显示当前时间</a>
<a href="http://www.baidu.com" onclick="return showTime();">显示当前时间</a>
</body>
</html>
1.3 数据类型
1.3.1 boolean 布尔
1.3.2 number 数字
1.3.3 string 字符串
1.3.4 Undefined 未定义 对应的值为undefined
1.3.5 Null 空对象 对应的值为null
1.3.6 object 对象类型
<script>
//当变量被声明,没有初始化,则值为undefined
var a;
alert(a);//undefined
a = null;
alert(a);//null
</script>
1.3.7 查看变量类型typeof(变量)
typeof 变量名 或 typeof(变量名)
<script>
//当变量被声明,没有初始化,则值为undefined
var a;
alert(typeof(a));//undefined
a = null;
alert(typeof (a));//object
</script>
1.3.8 类型转换
parse***(变量名);
var a2 = '100';
alert(parseInt(s2)+1)
1.4 判断是否相等
=== 严格相等(先判断类型,在判断值)
1.4.1 判断是否不是一个数字
isNaN(变量名);
1.4.2 将一段字符串当作js代码执行
eval('alert("abc")');
1.5 方法
1.5.1 语法: function 方法名 (参数列表){}
function add(a, b) {
alert(a + b);
return a + b;
}
1.5.2 不存在方法的重载,方法名相同时,后面的方法会把前面的方法覆盖掉.
1.5.3 可用可变参数替代方法重载
//可变参数
function add() {
//使用 arguments 获取所有参数,是一个数组
var sum = 0;
for (var i = 0; i < arguments.length; i++) {
sum += arguments[i];
}
alert(sum);
}
add(1,22,3,5,7);
1.5.4 匿名方法
<input id="btnShow" type="button" value="显示" />
<script>
//语法1: function (参数列表){...return...}
var f1 = function(a, b) {
return a + b;
};
//使用场景
document.getElementById('btnShow').onclick = function() {
alert("匿名函数");
}; //语法2 (function(n1,n2){...})(1,2);
//语法3 new Function("n1","n2","return n1+n2"); </script>
1.6 闭包
1.6.1 作用域链
理解闭包之前先理解作用域链:变量的作用域在当前函数中,以及当前函数的内部定义的函数中形成了一条链条.叫做作用域链/
1.6.2 闭包:支持函数内部调用函数之前声明过的变量.
<script>
//闭包 //01_定义函数
function show(name) {
//02-函数内部定义函数
return function () {
alert(name);
}
} //调用函数
var fun1 = show('张三');
fun1(); </script>
1.7 类
<script>
//类
function Person() { } var p1 = new Person();
p1.Nmae = '张三'; p1.say= function() {
alert(p1.Nmae);
};
p1.say();
</script>
为对象新增属性
1.8 原型:对象类型
<script>
//原型
function Person() {
this.Name = '姓名';
} var p1 = new Person();
//访问原型---为原型注册数据成员
p1.__proto__.Title = '标题';
Person.prototype.Size = '1K'; var p2 = new Person();
alert(p2.Title);
alert(p2.Size);
</script>
1.9 集合(数组和键值对)
<script>
//数组
var arry1 = [, "abc"];
//键值对--json对象
var arry2=
{
name:'张三',
age :
}; //使用
alert(arry1[]);
alert(arry2.name);
alert(arry2['age']); //定义Json数组
var people = [{ name: '李四', age: }, { name: '王五', age: }];
//使用
//people是数组,所以index是索引
for (var index in people) {
alert(people[index].name);
}
</script>
步步为营-53-JavaScript的更多相关文章
- JavaScript基础知识(学习笔记)
1. 在JavaScript中所有事物都是对象:字符串.数字.数组.日期等等2. 在JavaScript中,对象是拥有属性和方法的数据3. 属性是与对象相关的值,方法是能够在对象上执 ...
- JavaScript知识点总结
JavaScript学习总结1.JavaScript是作用于网络和HTML的一个编程语言.2.JavaScript代码必须放在<script></script>标签之间,Jav ...
- JavaEE填空与判断
Java EE软件工程师认证考试 试题库- 填空题和选择题 一. 填空题 1. HTML网页文件的标记是__html__,网页文件的主体标记是_body__,标记页面标题的标记是__tit ...
- JS常见问题总结
1. 什么是 JavaScript ? JavaScript 是一种具有面向对象的.解释型的.基于对象和事件驱动的.跨平台的.弱类型的程序设计语言 2. JavaScript 与 ECMAScript ...
- JavaScript高级程序设计53.pdf
共有的表单字段方法 每个表单字段都有两个方法:focus()和blur(),其中focus()用于将浏览器焦点设置到表单字段,激活表单字段.可以侦听页面的load事件 EventUtil.addHan ...
- [Effective JavaScript 笔记]第53条:保持一致的约定
对于api使用者来说,你所使用的命名和函数签名是最能产生普遍影响的决策.这些约定很重要具有巨大的影响力.它建立了基本的词汇和使用它们的应用程序的惯用法.库的使用者必须学会阅读和使用这些.一致的约定可以 ...
- Javascript高级编程学习笔记(53)—— DOM2和DOM3(5)遍历
遍历 “DOM2级遍历和范围” 定义了两个用于辅助完成顺序遍历的DOM结构类型 NodeIterator 和 TreeWalk 上述两种类型可以基于给定起点的DOM结构执行深度优先的遍历操作 对于检测 ...
- LeetCode 53题 最大子序和 -- JavaScript
解题思路分析: 该题是在一个整数数组中找到一个和最大的连续子数组,并返回和值.那么如何找到一个和最大的连续子数组呢?我们知道,这肯定需要遍历数组才行:好,那我们就开始遍历数组.首先,我们初始化最大和 ...
- JavaScript 中的数据类型
Javascript中的数据类型有以下几种情况: 基本类型:string,number,boolean 特殊类型:undefined,null 引用类型:Object,Function,Date,Ar ...
- JavaScript的“原型甘露”
今天跟朋友讨论JS的面向对象编程问题,想起了原来曾经看过一篇文章,但是看过很久想不起来了,用了很多关键词,终于用“悟透JavaScript 面向对象”这两个关键词找到了“原文”,原文地址:http: ...
随机推荐
- linux的一个find命令配合rm删除某天前的文件
语句写法: find 对应目录 -mtime +天数 -name "文件名" -exec rm -rf {} \; 例1: 将/usr/local/backups目录下所有10天前 ...
- 函数和常用模块【day06】:pickle模块(十二)
本节内容 1.dumps序列化和loads反序列化 2.dump序列化和load反序列化 3.序列函数 1.dumps序列化和loads反序列化 dumps()序列化 1 2 3 4 5 6 7 8 ...
- java compareTo() 用法注意点
转自:http://www.2cto.com/kf/201305/210466.html compareTo就是比较两个值,如果前者大于后者,返回1,等于返回0,小于返回-1,我下面给出了例子,由于比 ...
- HDU1098---数学
Ignatius's puzzle Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others ...
- JMS学习(八)-ActiveMQ Consumer 使用 push 还是 pull 获取消息
ActiveMQ是一个消息中间件,对于消费者而言有两种方式从消息中间件获取消息: ①Push方式:由消息中间件主动地将消息推送给消费者:②Pull方式:由消费者主动向消息中间件拉取消息.看一段官网对P ...
- STM32建立基本项目
1.下载固件库解压 2.Keil建立项目,项目下建立三个文件夹3.各目录下从固件库中拷贝对应的目录 4.修改main.c文件 5.修改C++ 6.修改Include 7,编译.
- C#使用Font Awesome字体
这个类是一个开源类,我做了一些功能优化1.如果没有安装Font Awesome字体,可能需要直接去exe路径下使用对应名称字体.2.可以直接返回\uFxxx类型字体,方便winform按钮使用,不然的 ...
- utf8_bin跟utf8_general_ci的区别
ci是 case insensitive, 即 "大小写不敏感", a 和 A 会在字符判断中会被当做一样的; bin 是二进制, a 和 A 会别区别对待. 例如你运行: SEL ...
- Winfrom多文档界面实现
Winfrom多文档界面实现 闲来无事,研究了下比较常用的多文档界面风格,网上找了好多例子,最终实现.记录一下 废话不多说,先上个效果: 默认打开我的桌面,首页不允许关闭,xtraTabPage动态添 ...
- 使用wcf的双工模式做的一个控制台聊天app
//wcf 服务 using System; using System.Collections.Generic; using System.Linq; using System.Runtime.Ser ...