本文转载自https://blog.csdn.net/xiaogeldx/article/details/85412716

JavaScript操作符

算术运算符

  • 算术运算符有:+,-,*,/,%,++,--

    • 对于算术运算符要注意的是:字符串和数字之间的相加减,以及布尔值类型和字符,数字之间的相加减

        var numa = 10;
      var numb = 4;
      document.write(numa+numb); //14
      console.log(numa-numb); //6
      console.log(numa*numb); //40
      console.log(numa/numb); //2.5
      var str = "1";
      console.log(numa+str); //101 减法不适用,减法只做数值的减法
      console.log(numa-str); //9
      console.log(numa+true); //11
      console.log(numa-false); //10
      console.log(numa+null); //10
      console.log(numa+undefined); //NaN
      console.log(0.1+0.2); //0.30000000000000004

赋值运算符

  • 赋值运算符有:=,+=,-=,*=,/=

      var num = 10;
    console.log("=",num); //= 10
    num += 5; //num = num + 5
    console.log("+=",num); //+= 15
    num -= 4; //num = num - 4
    console.log("-=",num); //-= 11
    num /= 3; //num = num / 3
    console.log("/=",num); // /= 3.6666666666666665
    num *= 2; //num = num * 2
    console.log("*=",num); //*= 7.333333333333333
    num %= 1; //num = num % 1
    console.log("%=",num); //%= 0.33333333333333304

比较运算符

  • 比较运算符有:>,>=,<,<=, == ,===(全等)

  • 比较运算符只会返回布尔值:true/false

    var a = 10;
    var b = 15;
    var c = '10';
    console.log(a>b); //false
    console.log(a>=b); //false
    console.log(a<b); //true
    console.log(a<=b); //true
    console.log(a==c); //true 比较数值
    console.log(a===c); //false

逻辑运算符

  • 逻辑运算符有:&&(与),||(或),!(非)

  • 以下在进行判断的时候为假

    1.0

    2.null

    3.undefined

    4.NaN

    5.' '(空字符串)

    6.false

    需要注意:逻辑运算符两边的数值均为布尔值,或者其他数据类型

      var a = 10>4 && 3>4;//1*0=0
    console.log(a); //false
    var b = 10>5 && 3>2;
    console.log(b); //true
    var c = 1>2 || 2<5;//0+1=1
    console.log(c); //true
    var d = 1 || 0 || '';
    console.log(d); //1
    var e = 22 && undefined || null;
    console.log(e); //null
    var f = !0;
    console.log(f); //true
    var g = 10 || 3 && false;
    console.log(g); //10
    var h = 1 && null && undefined;
    console.log(h); //null

JavaScript流程控制

  • if(判断条件){

    显示结果

    } //结尾不要有;
	<script type="text/javascript">
var a = 'xiaoge';
if(a=='xiaoge'){
alert("111")
}else if(a=='xiaogege'){
alert("222")
}else{
alert("333")
}
</script >

2.注意:"1" != 1,不要忘了break(不然一直向下运行)

    <script type="text/javascript">
var a = '1';
switch(a) {
case 1: //'1'不等于1
document.write('周零');
case '1':
document.write('周一');
break;
case '2':
document.write('周一');
break;
case '3':
document.write('周一');
break;
case '4':
document.write('周一');
break;
case '5':
document.write('周一');
break;
case '6':
document.write('周一');
break;
case '7':
document.write('周日');
break;
default:
document.write('找不到周几');
}
</script>

JavaScript循环

for循环

  • for(循环条件){

    显示结果

    } //结尾不要有;

      for (var i=1;i<10;i++) {		#注意不要忘了i++,如果没有i++就是死循环,无法执行
    document.write(i)
    } #123456789
    九九乘法表:
    <script type="text/javascript">
    for (var i=1;i<=9;i++) {
    document.write('<br>')
    for (var j=1;j<=i;j++){
    var sum = i*j;
    document.write(i+"*"+j+"="+sum+" "); +是连接作用
    }
    }

while循环

  • while(循环条件){

    显示结果

    } //结尾不要有;

  • 先判断再执行

      var a = 0;
    while (a<10){
    document.write(a);
    a++;
    }

do.while循环

  • do{

    显示结果

    }while{

    循环条件

    }

  • 先执行再判断

      var b = 1;
    do {
    document.write(b);
    b++;
    }while (b<10)

JavaScript字符串方法

  • length:长度

  • [ ]/charAt():下标

  • indexOf():索引

  • replace():替换

  • split():分割

  • toUpperCase():大写

  • toLowerCase():小写

  • substring():截取

  • slice():切割

      var str1 = 'hello world';
    var str2 = 'HEllo GIrl';
    document.write(str1.length+"<br>"); // 11空格算一个
    document.write(str1[0]+"<br>") ; //h
    document.write(str1.charAt(3)+ '<br>'); // l
    document.write(str1.indexOf("l")+"<br>");//2 第一个l索引是2
    document.write(str1.split(" ")+"<br>"); //把分割点变成逗号
    document.write(str1.slice(0,4)+"<br>"); //hell,左闭右开
    document.write(str1.slice(4,2)+"<br>"); //空,左闭右开,考虑顺序
    document.write(str1.substring(1,4)+"<br>"); //ell
    document.write(str1.substring(4,2)+"<br>"); // ll,不考虑顺序
    document.write(str1.substring(8,4)+'<br>');// o wo 小的数闭大的数开
    document.write(str1.replace('he',"h")+"<br>"); //hllo world
    document.write(str1.replace('o',"m")+"<br>"); //hellm world,替换第一个
    document.write(str1.toUpperCase()+'<br>');//HELLO WORLD
    document.write(str2.toLowerCase()+'<br>');//hello girl

JavaScript数组方法

  • 数组常用方法:

    length:长度

    []:下标

    push():追加

    Unshift():添加

    Pop():后删

    Shift();前删

    indexOf():索引

    slice();切片

    splice():替换

    join():拼接

    Sort():排序

    Reverse():反向

    Concat():连接

          var li = [1,2,'haha','yang'];
    var li1 = ['xiaoge','long'];
    var li2 = ['na','yan','yi'];
    document.write(li.length+'<br>');//4
    document.write(li[1]+'<br>');//2
    document.write(li.indexOf('yang')+'<br>');//3
    document.write(li.push('洋',3)+'<br>');//6
    document.write(li+'<br>');//1,2,haha,yang,洋,3 追加到数组后面
    document.write(li.unshift('na')+'<br>');//7
    document.write(li+'<br>');//na,1,2,haha,yang,洋,3 添加到数组前面
    document.write(li.pop()+'<br>');//3 从数组后面删除 显示删掉的
    document.write(li+'<br>');//na,1,2,haha,yang,洋
    document.write(li.shift()+'<br>');//na 从数组前面删除 显示删掉的
    document.write(li+'<br>');//1,2,haha,yang,洋
    document.write(li.slice(1,3)+'<br>');//2,haha 左闭右开
    //splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。
    //如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。
    //从索引1开始,删除0个,用'na'替换索引1删除的元素
    document.write(li.splice(1,0,'na')+'<br>');//
    document.write(li+'<br>');//1,na,2,haha,yang,洋
    //从索引1开始,删除一个('na'),用'yu','wen'代替删除的'na'
    document.write(li.splice(1,1,'yu','wen')+'<br>');//na
    document.write(li+'<br>');//1,yu,wen,2,haha,yang,洋
    //从索引0开始,删除s三个(1,'yu','wen'),用'yu','wen'代替删除的1,'yu','wen'
    document.write(li.splice(0,3,'yu','wen')+'<br>');//1,yu,wen
    document.write(li+'<br>');//yu,wen,2,haha,yang,洋
    document.write(li.join('-')+'<br>');//yu-wen-2-haha-yang-洋
    document.write(li.concat(li1,li2)+'<br>');//yu,wen,2,haha,yang,洋,xiaoge,long,na,yan,yi
    document.write(li+'<br>');//yu,wen,2,haha,yang,洋
    document.write(li.sort()+'<br>');//2,haha,wen,yang,yu,洋 按照ascii码正向排序
    document.write(li.reverse()+'<br>');//洋,yu,yang,wen,haha,2 反向
  • 补充方法:

    toString():字符串

    toFixed():小数字符串

    isNaN():判断NaN

    isArray():判断数组

    parseInt():整数

    parseFlost():浮点数

    Number():数字

练习

	<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="stylesheet" href="css/reset.css">
<link rel="stylesheet" href="css/test.css">
<script src="js/test.js"></script>
</head>
<body>
<button>图一</button>
<button>图二</button>
<button>图三</button>
<button>图四</button>
<button>修改</button>
<div id="div1" style="width: 400px; height: 400px;border: 1px solid red;"></div>
<script type="text/javascript">
var btn = document.getElementsByTagName('button');
var box = document.getElementById('div1');
btn[0].onclick = function () {
div1.style.background = "url('image/xingye1.jpg')";
};
btn[1].onclick = function () {
div1.style.background = "url('image/xingye2.jpg')";
};
btn[2].onclick = function () {
div1.style.background = "url('image/zql1.jpeg')";
};
btn[3].onclick = function () {
div1.style.background = "url('image/zql2.jpg')";
};
var a = 0;
btn[4].onclick = function () {
a += 1;
if(a%4==1){
div1.style.background = "url('image/zql1.jpeg')";
}else if(a%4==2){
div1.style.background = "url('image/zql2.jpg')";
}else if (a%4==3){
div1.style.background = "url('image/xingye1.jpg')";
}else{
div1.style.background = "url('image/xingye2.jpg')";
}
};
</script>
</body>
</html>

JavaScript(二)的更多相关文章

  1. 从头开始学JavaScript (二)——变量及其作用域

    原文:从头开始学JavaScript (二)--变量及其作用域 一.变量 ECMAscript变量是松散型变量,所谓松散型变量,就是变量名称可以保存任何类型的数据,每个变量仅仅是一个用于保存值的占位符 ...

  2. SkylineDemoForWeb JavaScript二次开发示例代码

    SkylineDemoForWeb JavaScript二次开发示例代码 http://files.cnblogs.com/files/yitianhe/SkylineDemoForWeb.zip

  3. JavaScript二(第一个js程序)

    一.<script>xxxx</script>标签解析 1.charset :可选,表示通过src属性指定的字符集,由于大多数浏览器忽略它,所以很少有人用它2.defer:可选 ...

  4. Javascript 二维码生成库:QRCode

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. 初识JavaScript(二)

    初识JavaScript(二) 我从上一篇<初识JavaScript(一)>知道和认识JavaScript的词法结构,也开始慢慢接触到了JavaScript的使用方法,是必须按照JavaS ...

  6. (转)JavaScript二:JavaScript语言的基本语法要求

    摘自:http://blog.csdn.net/erlian1992 要学习好JavaScript,首先我们要懂JavaScript语言的一些基本语法要求: 一,区分大小写 JavaScript语言区 ...

  7. 以Python角度学习Javascript(二)之DOM

    HTML DOM 定义了访问和操作 HTML 文档的标准方法. DOM 将 HTML 文档表达为树结构. 文档对象模型(Document Object Model,DOM)是一种用于HTML和XML文 ...

  8. javascript二维数组

    var a= new Array(new Array(1,2),new Array('b','c')); document.write(a[1][1]); 说白了,就是利用for循环定义二维数组! & ...

  9. javascript二维数组排序

    js使用sort()函数对二维数组快速排序的写法 作者:admin    时间:2015-7-3 9:31:4    浏览:1847 js数组的排序方法有很多,冒泡法,插入法等等,不过对于数组的排序来 ...

  10. JavaScript二维码生成——qrcode.js

    在开发中,有时候,我们需要根据不同的内容来动态生成二维码,则可以使用qrcode.js这个小插件来实现. 1.qrcode.js文件内容: (1)未压缩(qrcode.js): /** * @file ...

随机推荐

  1. SDL 开发实战(三):使用 SDL 绘制基本图形

    在上文 SDL 开发实战(二):SDL 2.0 核心 API 解析 我们讲解了SDL最核心的API,并结合Hello World代码了解了SDL渲染画面的基本原理. 本文我们来讲一下,如何使用SDL的 ...

  2. [Swift]LeetCode371. 两整数之和 | Sum of Two Integers

    Calculate the sum of two integers a and b, but you are not allowed to use the operator + and -. Exam ...

  3. [SQL]LeetCode595. 大的国家 | Big Countries

    SQL架构 Create table If Not Exists World (name varchar(), continent varchar(), area int, population in ...

  4. [Swift]LeetCode861. 翻转矩阵后的得分 | Score After Flipping Matrix

    We have a two dimensional matrix A where each value is 0 or 1. A move consists of choosing any row o ...

  5. Java接口实现传参

    package com.gezhi.interfaces;/** * 新建一个dog类实现接口livingable(狗吃和上厕所都是与生俱来的不应该写成接口) * @author square 凉 * ...

  6. 定时任务 winform开发

    在项目中我们经常遇到与时间结合的无限或者有限轮回的任务.例如每月一号统计工作量,基本这种情况,都会是设置定时任务,定时执行.好了,下面就记录一下定时任务的开发吧. 首先描述一下开发思路: 建立一个wi ...

  7. mysql如何卸载完全

    如何彻底的删除MySQL数据库: 以下操作以Window7操作系统为例: 1)停止window的MySQL服务. 找到“控制面板”-> “管理工具”-> “服务”,停止MySQL后台服务. ...

  8. Python、pip和scrapy的安装——Python爬虫学习笔记1

    Python作为爬虫语言非常受欢迎,近期项目需要,很是学习了一番Python,在此记录学习过程:首先因为是初学,而且当时要求很快速的出demo,所以首先想到的是框架,一番查找选用了Python界大名鼎 ...

  9. asp.net core系列 37 WebAPI 使用OpenAPI (swagger)中间件

    一.概述 在使用Web API时,对于开发人员来说,了解其各种方法可能是一项挑战.在ASP.NET Core上,Web api 辅助工具介绍二个中间件,包括:Swashbuckle和NSwag .NE ...

  10. APK安装成功后点击"打开",按Home键,在桌面点击图标后应用重启

    转载:http://blog.csdn.net/kepoon/article/details/7468688 问题: 安装系统SD卡里面的apk或者原有的程序更新版本的时候,会遇到升级安装成功之后的一 ...