JavaScript回顾
JavaScript是Web编程语言。
- JavaScript是一种基于对象的脚本语言
- 它是解释执行的
- 在客户端的浏览器中运行
- 可以被嵌入HTML文件中
- 代码以纯文本的形式存储在文件中
- 可以使用任何一种文本编辑器来编辑JavaScript程序
- 单行注释使用//,块注释使用/*...*/
- 在字符串中插入特殊字符 如 “ ‘ ; &,使用 \ + 特殊字符;如: You & I sing “Happy Birthday”.document.write(“You \& I sing \”Happy Birthday\”.”)
- 声明变量:用命令var做声明
- 变量必须以字母、下划线(_)或美元符号($)
- 开头余下的字符可以是下划线、美元符号或任何的字母或数字
- 不能使用JavaScript中的关键字或者保留字做为变量名称
变量
在JavaScript中有五种基本运算类型:
- Underfunded——未定义类型(变量值为Underfunded)
- String——字符串类型(用""或者''括起来的字符或数值)
- Boolean——布尔类型(变量值为true或false)
- Null——空类型(变量值为null)
- Number——数值类型(特殊值NaN非数)
类型转换
运算 | 结果 |
数值与字符串相加 | 将数值强制转换为字符串。 |
布尔值与字符串相加 | 将布尔值强制转换为字符串。 |
数值与布尔值相加 | 将布尔值强制转换为数值 |
其他类型转换为String方法1.toString方法2.String()函数
其他类型转换为Number使用Number函数
非数字转换为NaN parseInt(),parseFloat()函数
转换为Boolean类型使用Boolean()函数
函数的格式
function 函数名( param1 , param2 , ..... ){
//函数体
return 返回值;
}
var 返回值变量 = 函数名(实参列表);
注意1:JavaScript里面,根据函数名来确定调用哪一个函数!后面定义的函数覆盖前面的函数。
function add( i , j ){
return i + j;
}
function add( i ){
return i;
}
var z = add(1,2);
alert(z); ==> 1
注意2:调用名,和参数个数没有没有关系,顺次将实际传入的参数对应到形式参数上。
function add( i , j , m ){
return i + j;
}
var z = add(1,2,4,5,6);
alert(z); ==>3
注意3:函数的内部有一个属性,叫做arguments,存放了所有实际参数的值。
//求几个数字的合计
function add(){
var sum = 0 ;
for( var k = 0 ; k < arguments.length ; k++ ){
sum = sum + arguments[k];
}
return sum;
}
var z = add(1,2,4,5,6);
alert(z); ==> 18
注意4:函数内部可以定义函数,该函数叫做内部函数,如果没有做特殊处理,那么该函数只能被内部调用。
消息框 (window对象)
alert()/prompt()/confirm()
对象Object
var obj = new Object();
obj.id = "1001";
obj.name = "张三丰";
obj.sex = true;
obj.birthday = new Date();
obj.action = function(){
alert(this.name + "每天打太极拳!");
//this指代当前对象
};
//打印同学信息
function display( obj ){
alert(obj.id);
obj.action();
}
display(obj); ==> 1001 张三丰每天打太极
数组
- 按照索引赋值和取值
- 数组可以放任意数据类型的数据
- 数组的长度不固定
- 数组可以不按照序号赋值
- 没有赋值的对应的元素取值为undefined
var ary = new Array(
"1001" , "张三丰" , true , function(){
alert("打太极!");
}
);
ary[3]();
ary[6] = "张君宝";
alert( ary[6] );
alert( ary[5] ); // undefined
重要的方法:
1. join
范例:
var ary = new Array(1,2,"张三丰");
var str = ary.join(",");
alert(str); //join 方法 返回字符串值,其中包含了连接到一起的数组的所有元素,元素由指定的分隔符分隔开来。
2.排序方法 sort
范例:
var ary = new Array(1,2,5,12,45,8,4);
var newAry = ary.sort(
function(i , j ){
return i - j;//如果sort方法不传递任何参数,则按照字典顺序的ascii码值进行排序。
}
);
//sort 方法将 Array 对象进行适当的排序;在执行过程中并不会创建新的 Array 对象。
//如果为 sortfunction 参数提供了一个函数,那么该函数必须返回下列值之一:
//负值,如果所传递的第一个参数比第二个参数小。
//零,如果两个参数相等。
//正值,如果第一个参数比第二个参数大。
alert(newAry); //按照数字进行排序
如果sort方法不传递任何参数,则按照字典顺序的ascii码值进行排序。
String类型
- charAt 方法
- indexOf 方法
- replace 方法
- split 方法
- substr 方法 | substring 方法
- toLowerCase 方法 | toUpperCase 方法
演示:
//split 方法
var str = "张三丰0杨玉环1李斯的&杨广";
var ary = str.split(/[0-9]|&/);//split 方法 将一个字符串分割为子字符串,然后将结果作为字符串数组返回。
for( var i = 0 ; i <ary.length ; i++ ){
alert(ary[i]);
}
//substr 方法 | substring 方法 返回一个从指定位置开始的指定长度的子字符串 返回位于 String 对象中指定位置的子字符串。
//如果 length 为 0 或负数,将返回一个空字符串。如果没有指定该参数,则子字符串将延续到 stringvar 的最后。
function SubstrDemo(){
var s, ss; // 声明变量。
var s = "The rain in Spain falls mainly in the plain.";
ss = s.substr(12, 5); // 获取子字符串。
alert(ss);// 返回 "Spain"。
}
SubstrDemo();
//substring 方法将返回一个包含从 start 到最后(不包含 end )的子字符串的字符串。
//substring 方法使用 start 和 end 两者中的较小值作为子字符串的起始点。例如, strvar.substring(0, 3) 和 strvar.substring(3, 0) 将返回相同的子字符串。
//如果 start 或 end 为 NaN 或者负数,那么将其替换为0。
//子字符串的长度等于 start 和 end 之差的绝对值。例如,在 strvar.substring(0, 3) 和 strvar.substring(3, 0) 返回的子字符串的的长度是 3。
function SubstringDemo(){
var ss; // 声明变量。
var s = "The rain in Spain falls mainly in the plain..";
ss = s.substring(12, 17); // 取子字符串。
alert(ss); // 返回子字符串
}
SubstringDemo();
//toLowerCase 方法 | toUpperCase 方法 返回一个字符串,该字符串中的所有字母都被转化为大写字母。toUpperCase 方法对非字母字符不会产生影响。
var strVariable = "This is a STRING object";
strVariable = strVariable.toUpperCase( );
alert(strVariable);
对象Date
1. 初始化方式
dateObj = new Date()
dateObj = new Date(dateVal)
dateObj = new Date(year, month, date[,
hours[, minutes[, seconds[,ms]]]])
2. 重要的方法
getDate 方法:得到1-31之间的一个数字
getFullYear 方法:得到年
getMonth 方法:得到月 ,0-11
getTime 方法:得到从1970/01/01标准时间到该时间之间经历的毫秒数
对应有一组setXXXX方法
Date.parse(dateVal) : dateVal --》 日期的字符串
将一个字符串转换成Date对象
function DateDemo(){
var d, s = "Today's date is: "; // 声明变量。
d = new Date(); // 创建 Date 对象。
alert(d);
s += (d.getMonth() + 1) + "/"; // 获取月份。
s += d.getDate() + "/"; // 获取日。
s += d.getFullYear(); // 获取年份。
alert(d.getTime()/1000/60/60/24/365);
alert(s); // 返回日期。
}
DateDemo();
function GetTimeTest(testdate){
var s, t; // 声明变量。
var MinMilli = 1000 * 60; // 初始化变量。
var HrMilli = MinMilli * 60;
var DyMilli = HrMilli * 24;
t = Date.parse(testdate); // 解析 testdate。
s = "There are " // 创建返回的字符串。
s += Math.round(Math.abs(t / DyMilli)) + " days "
s += "between " + testdate + " and 1/1/70";
alert(s); // 返回结果。
}
GetTimeTest("November 1, 1997 10:15 AM");
Math
ceil 方法:大于等于其数字参数的最小整数。
3.4 ==》4
floor 方法:小于等于其数值参数的最大整数。
3.4 ==》3
pow 方法:
random 方法:[0-1)的小数
round 方法:四舍五入到整数
sqrt 方法:返回数字的平方根。
var a = 4.6;
var b = 2;
alert(Math.ceil(a));
alert(Math.floor(a));
alert(Math.pow(2,2));
alert(Math.round(Math.random()*1000));
alert(Math.sqrt(b));
}
math();
JavaScript回顾的更多相关文章
- 【JavaScript回顾】继承
组合继承 组合继承(combination inheritance),有时候也叫做伪经典继承,指的是将原型链和借用构造函数的 技术组合到一块,从而发挥二者之长的一种继承模式.其背后的思路是使用原型链实 ...
- JavaScript回顾一下js的基础知识,以及学习一下在项目中了解到的新知识
学习文档:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Guide/Functions https://www.cnblogs.com ...
- 小强的HTML5移动开发之路(30)—— JavaScript回顾5
一.查找 第一种方式:依据id查找 var obj = document.getElementById(id); //document是HTMLDocument的实例 <html> & ...
- 小强的HTML5移动开发之路(29)—— JavaScript回顾4
一.变量的作用域 javascript脚本的执行过程分为两个阶段: 第一阶段,js引擎()先扫描整个javascript代码.当碰到<script>时,会先创建一个全局的活动对象,将< ...
- 小强的HTML5移动开发之路(27)—— JavaScript回顾2
Javascript面向对象基础知识 1.如何定义一个类,使用如下语法来创建一个类 function Person(name, age){ //习惯上第一个字母大写 //this修饰的变量称为属性 t ...
- 小强的HTML5移动开发之路(26)—— JavaScript回顾1
很久没有怎么用过JavaScript了,感觉有点生疏,最近在看关于HTML5移动开发方面的资料,有一种直觉告诉我,JavaScript昨天.今天很重要,明天会更重要.现在好多基于JavaScript的 ...
- 【JavaScript回顾】闭包
什么是闭包? 闭包是指有权访问另一个 函数作用域中的变量的函数(也就是说,你这个函数用到的变量另外一个域的就算闭包) <script> function f1() { var age = ...
- 【JavaScript回顾】对象创建的几种模式
组合使用构造函数模式和原型模式 创建自定义类型的常见方式,就是组合使用构造函数模式与原型模式.构造函数模式用于定义实 例属性,而原型模式用于定义方法和共享的属性.结果,每个实例都会有自己的一份实例属性 ...
- 小强的HTML5移动开发之路(32)—— JavaScript回顾7
BOM模型brower object model(浏览器对象模型),通过浏览器内置的一些对象可以操作浏览器本身. DOM是用来操作页面的,BOM是用来操作浏览器本身的. BOM是没有规范的,但是大部分 ...
随机推荐
- 【Leetcode】位1的个数
解题方案:位操作的技巧 整数 n 和 n-1(n>0) 做与运算,从其二进制形式来看,可以消掉 n 的二进制数值中最后1个 “1” .循环进行,每次消掉1个 “1” .整数 n 的二进制数值中有 ...
- java jdk原生的http请求工具类
package com.base; import java.io.IOException; import java.io.InputStream; import java.io.InputStream ...
- es之路由:进一步提高Elasticsearch的检索效率(适用大规模数据集)
1:一条数据是如何落地到对应的shard上的 当索引一个文档的时候,文档会被存储到一个主分片中. Elasticsearch 如何知道一个文档应该存放到哪个分片中呢? 首先这肯定不会是随机的,否则将来 ...
- java跨越请求实例
使用Access-Control-Allow-Origin解决跨域 什么是跨域 当两个域具有相同的协议(如http), 相同的端口(如80),相同的host(如www.google.com),那么我们 ...
- Java第一次学习总结
学习内容: 1.java是本学期刚刚接触新的一种编程语言,与大一C语言在语法上有很多相同之处,不同的是在很多问题上,更加简练,更加易于理解. 例如:输出水仙花数,从C语言近五十行代码缩短近十几行,数据 ...
- linux上的常用的系统自带命令
wikipedia 发现的分类,发现还有好多没用过.. Unix command-line interface programs and shell builtins File system ca ...
- JS 替换所有的空格
在JS中替换掉输入框内的空格,是在处理表单需求的时候极为常用的一项操作,以防止用户的操作习惯引起数据异常,保证传参的安全性. NO.1 name.replace(" "," ...
- delphi2010:按键 控制键 组合键的判断 响应
procedure TForm7.FormShortCut(var Msg: TWMKey; var Handled: Boolean); var aKey: TShortCut; aShif ...
- python3+selenium常用语法汇总
Selenium常用语法总结 一.Selenium常用定位语法 1.元素定位 (1)ID定位元素: find_element_by_id(‘’) (2)通过元素的类名称定位元素: find_eleme ...
- 文档压缩 | gzip、bzip2、xz
6.文档的压缩与打包 Linux下常见后缀名所对应的的压缩工具 .gz 表示由gzip压缩工具压缩的文件 .bz2 表示由bzip2压缩工具压缩的文件 .tar 表示由tar打包程序打包的文件(tar ...