js基础知识入门总结
1、第一个js程序
一个项目包括三部分:前端(html、css、js)、数据库、后端技术
引入方式:页面中直接写,script标签引入
js事件绑定:
<input type="button" value="按钮" onclick="myClick()" />
<input type="button" value="按钮" id="btn"/>
function myClick(){
console.log("点击按钮");
}
document.getElementById('btn').onclick=function(ev){
console.log("点击按钮");
}
2、js变量声明规则
var iNum1 = 10;
var sString = "abceelf";
var bFlag = true;
var aNum = [1,2,3,4,5];
var oObject = {name:'marry',age:18};
var fNumber = 10.3;
变量命名规范:
1)变量的第一个字符必须是字母、下划线_、或$
2)其余的字符必须是 下划线_ 、字母、数字、或$
3)不能用js的关键字
4)驼峰命名法
3、变量转换
var iNum1 = 10;
var sString = "baude";
// + 作拼接作用,使数字转换成字符串浏览器自动转换的,取toString()方法
iNum1 + sString
//而 -号、*号、/号只能作运算,即将所有数据转换为数字,取Number()方法,如果不能转换则为NaN var bFlag = true;
//布尔值转换为数字1或0
iNum1 + bFlag //把数据转换成数字
var sString2 = “20djaog”;
Number(sString2)//将数字的字符串转换为数字
parseInt(sString2)//将不能转换为止
parseFloat("10.2ajofg")//可以转换浮动型
4、js字符串操作
var sString = "Hello world";
sString.length //获取字符串长度
sString.charAt(2) //获取字符串指定索引的字符
sString.substring(start,end) //截取字符串从start位置到end位置,如果end缺省则到结尾
sString.substr(start,length) //截取字符串从start位置截取length个字符
sString.indexOf('a',start) // 返回字符串中指定的字符a第一次出现的位置,若无则返回-1;若第二个参数有,则从第二个参数start的位置开始
sString.lastIndexOf('a',start) //从右边到左边查询
5、js数组
//数组声明
var aTeam = new Array(4);
aTeam[0] = "dkop";
...... var aTeam = ["dd","es","ag"]; //数组方法
aTeam.toString(); //默认通过逗号隔开
aTeam.join("_").toString(); //指定通过 _ 隔开
aTeam.reverse().toString() //反序处理 //字符串处理为数组
var sString = "deig_taig_kie_lieng";
sString.split("_") //通过指定字符进行分割,返回一个数组
6、条件判断
运算:除/ 、取余%
条件语句
if(条件1){
//第一种情况
}else if(条件2){
//第二种情况
}else{
//剩余情况
}
//if语句也可以使用三元运算符等价代替
if(a>b){
c=a;
}else{
c=b;
}
等价于 c = a>b ? a:b;
7、等于号的区别=、==、===
// =是赋值
// ==是不判断类型,会自动转换为相同的类型再进行判断
// ===会先判断类型是否相同
var iNum = 10;
var sNum = ‘10’;
if(iNum == sNum){
//不判断类型
}
if(iNum === sNum){
//判断类型
} //逻辑运算符 &&、 ||、 !
8、循环结构
//while循环
var i = 0;
var iSum = 0;
while(i<101){
//当前的iSum=上次的iSum+当前的i
iSum += i;
i++
}
alert(iSum); //do...while循环
//for循环
var iSum = 0;
for(var i=0;i<101;i++){
iSum += i;
}
9、for循环的嵌套
//9*9乘法表,首先最重要的就是确定各个循环变量的范围
// var i (1~9) var j<i
var sHtml = "<table>";
for(var i = 1;i<=9;i++){
sHtml+="<tr>";
for(var j = 1;j<=i;j++){
sHtml+="<td>"+i+"*"+j+"="+i*j+"</td>";
}
}
sHtml+="</table>";
document.writeln(sHtml); //以下是反向写入页面中
var sHtml = "<table>";
for(var i = 9;i>=1;i--){
sHtml+="<tr>";
for(var j = i;j>=1;j--){
sHtml+="<td>"+i+"*"+j+"="+i*j+"</td>";
}
}
sHtml+="</table>";
document.writeln(sHtml);
//冒泡排序:前面的元素依次和后面的元素进行比较
var aNumber = [10,2,34,4,56,12,45,44,6,12,23,55];
var iNum = 0;
for(var i = 0;i<=aNumber.length-2;i++){
for(var j = i+1;i<=aNumber.length-1;j++){
if(aNumber[i]>aNumber[j]){
iNum = aNumber[i];
aNumber[i] = aNumber[j];
aNumber[j] = iNum;
}
}
}
alert(aNumber); //以下是降序
var aNumber = [10,2,34,4,56,12,45,44,6,12,23,55];
var iNum = 0;
for(var i = 0;i<=aNumber.length-2;i++){
for(var j = i+1;i<=aNumber.length-1;j++){
if(aNumber[i]<aNumber[j]){
iNum = aNumber[i];
aNumber[i] = aNumber[j];
aNumber[j] = iNum;
}
}
}
alert(aNumber);
10、switch语句
switch(num){
case 1:
alert('星期1');
break;
case 2:
alert('星期2');
break;
case 3:
alert('星期3');
break;
case 4:
alert('星期4');
break;
default:
alert("星期天");
break;
}
11、break、continue和return
function myClick() {
var iSum = 0;
for(var i=1;i<101;i++){
if(i==5){
//跳出整个循环体,只加到5
// break;
//跳过当前条件的循环,即除去5
// continue;
//结束整个方法体,此外return也可以作为函数的返回值
return;
}
iSum += i;
}
alert(iSum);
}
12、Math对象
Math.PI;
Math.max(10,32,40);
Math.min(10,32,40);
Math.round(12.59);//四舍五入
Math.ceil(12.1);//向上取整
Math.floor(12.9);//向下取整
Math.random();//获取0~1的随机数,不包括0和1
Math.floor(Math.random()*100+1) //获取1~100之前的整数
13、date对象
var myData = new Date();
myData.getFullYear();
myData.getMonth()+1;//月是从0开始的,所以要加1
myData.getDay();
myData.getHours();
myData.getMinutes();
myData.getSeconds();
14、setInterval和setTimeout
function myClick() {
var i=0;
//循环执行
var timer = setInterval(function () {
i++;
if(i==6){
//清除指定的定时器
clearInterval(timer);
}
console.log(i);
},1000);
//只执行一次
setTimeout(function () {
i++;
console.log(i);
},1000);
}
js基础知识入门总结的更多相关文章
- Js基础知识-入门
创建脚本块 <script language=”JavaScript”> JavaScript code goes here </script> 隐藏脚本代码 <scri ...
- Node.js基础知识
Node.js入门 Node.js Node.js是一套用来编写高性能网络服务器的JavaScript工具包,一系列的变化由此开始.比较独特的是,Node.js会假设在POSIX环境下运行 ...
- [JS复习] JS 基础知识
项目结尾,空闲时间,又把<JS 基础知识> 这本书过了一遍,温故知新后,很多知其然不知其所以然的内容 豁然开朗. [1. 用于范围的标签] display :inline or bloc ...
- HTML+CSS+JS基础知识
HTML+CSS+JS基础知识 目录 对HTML+CSS+JS的理解 基础知识 对HTML+CSS+JS的理解 基础知识 插入样式表的三种方式 外部样式表:<link rel="sty ...
- Linux基础知识入门
[Linux基础]Linux基础知识入门及常见命令. 前言:最近刚安装了Linux系统, 所以学了一些最基本的操作, 在这里把自己总结的笔记记录在这里. 1,V8:192.168.40.10V1: ...
- 网站开发进阶(十五)JS基础知识充电站
JS基础知识充电站 1.javascript alert弹出对话框时确定和取消两个按钮返回值? 用的不是alert对话框,是confirm confirm(str); 参数str:你要说的话或问题: ...
- NodeJs>------->>第三章:Node.js基础知识
第三章:Node.js基础知识 一:Node.js中的控制台 1:console.log.console.info 方法 console.log(" node app1.js 1> ...
- Hibernate入门1. Hibernate基础知识入门
Hibernate入门1. Hibernate基础知识入门 20131127 前言: 之前学习过Spring框架的知识,但是不要以为自己就可以说掌握了Spring框架了.这样一个庞大的Spring架构 ...
- JS基础知识笔记
2020-04-15 JS基础知识笔记 // new Boolean()传入的值与if判断一样 var test=new Boolean(); console.log(test); // false ...
随机推荐
- 【14】代理模式(Proxy Pattern)
一.引言 在软件开发过程中,有些对象有时候会由于网络或其他的障碍,以至于不能够或者不能直接访问到这些对象,如果直接访问对象给系统带来不必要的复杂性.这时候可以在客户端和目标对象之间增加一层中间层,让代 ...
- sql语句之where子句
现在的登录都是把信息存在数据库,然后把输入的与数据库内容进行匹配,一样就登录成功,否则不成功.验证码是为了防止暴力破解,因为计算机能够自动匹配密码,但是不能识别图片上的字母,只有人能识别,所以匹配的速 ...
- nginx配置https转发到tomcat(使用自签名的证书)
一.使用openSSL生成自签名的证书 1.生成RSA私钥 命令:openssl genrsa -des3 -out server.key 1024 说明:生成rsa私钥,des3算法,1024强度, ...
- SparseArray类
继续阅读SparseArray的源码,从构造方法我们可以看出,它和一般的List一样,可以预先设置容器大小,默认的大小是10: public SparseArray() { this(10); } p ...
- python移位运算符
1,二进制方式 >>> bin( 1 ) '0b1' >>> bin( 10 ) '0b1010' >>> a = 0b10 >>&g ...
- JavaScript判断值是否是NaN
第一种方法: if (!Number.isNaN) { Number.isNaN = function (n) { return ( typeof n === 'number' && ...
- Console控制台的正确打开方式
Console控制台的正确打开方式 console对象提供了访问浏览器调试模式的信息到控制台 -- Console对象 |-- assert() 如果第一个参数断言为false,则在控制台输出错误信息 ...
- 【js实例】Array类型的9个数组方法,Date类型的41个日期方法,Function类型
前文提要:[js实例]js中的5种基本数据类型和9种操作符 Array类型的9个数组方法 Array中有9个数组方法: 1.检测数组 2.转换方法 3.栈方法 4.队列方法 5.冲排序方法6.操作方法 ...
- 帆软发布大数据直连引擎FineDirect,对焦大数据BI
摘要:近日,帆软官方正式发布大数据直连引擎FineDirect模块.通过该模块,企业在应用FineBI原有功能的基础上,可直接对接现有数据源,无论是传统的关系型数据库,还是Hadoop生态圈.Mpp构 ...
- Clumsy 弱网络环境模拟工具使用介绍
Clumsy 弱网络环境模拟工具使用介绍 by:授客 QQ:1033553122 简介 利用封装 Winodws Filtering Platform 的WinDivert 库, clumsy 能实时 ...