• JavaScript学习-2017年5月18日


    术语:JavaScript是网景公司对ECMAScript标准的一种实现

    版本:讲到JavaScript的版本,实际上就是说它实现了ECMAScript标准的哪个版本。


    位置:第一种方法由<script>...</script>包含的代码就是JavaScript代码,它将直接被浏览器执行。

             第二种方法是把JavaScript代码放到一个单独的.js文件,然后在HTML中通过<script src="{% static '相对目录' %}"></script>引入这个文件

    运行:以file://开头的地址无法执行如联网等JavaScript代码,最终,你还是需要架设一个Web服务器,然后以http://开头的地址来正常执行所有JavaScript代码。

    调试:Google Chrome的控制台(Console)


    语法:每个语句以;结束,语句块用{...}

    注释:// 行注释,/*块注释*/

    大小写:严格区分


     数据类型

    Number:JavaScript不区分整数和浮点数,统一用Number表示,以下都是合法的Number类型:整数123,浮点数0.456,科学计数法,负数,NaN表示Not a Number,Infinity表示无限大

    字符串:字符串是以单引号'或双引号"括起来的任意文本

    布尔值:一个布尔值只有true、false两种值

    比较运算符:第一种是==比较,它会自动转换数据类型再比较,很多时候,会得到非常诡异的结果;

                     第二种是===比较,它不会自动转换数据类型,如果数据类型不一致,返回false,如果一致,再比较。 

                    浮点数的相等比较,要比较两个浮点数是否相等,只能计算它们之差的绝对值,看是否小于某个阈值

    null和undefined:null表示一个“空”的值,undefined表示值未定义,大多数情况下,我们都应该用null。undefined仅仅在判断函数参数是否传递的情况下有用。

    数组:JavaScript的数组可以包括任意数据类型,[1, 2, 3.14, 'Hello', null, true];

            另一种创建数组的方法是通过Array()函数实现:new Array(1, 2, 3);出于代码的可读性考虑,强烈建议直接使用[]。

    对象:JavaScript的对象是一组由键-值组成的无序集合

    变量:申明一个变量用var语句,变量类型不固定

    strict模式:在strict模式下运行的JavaScript代码,强制通过var申明变量,未使用var申明变量就使用的,将导致运行错误。启用strict模式的方法是在JavaScript代码的第一行写上:'use strict';


     字符串

    多行字符串:用反引号 ` ... ` 表示

    模板字符串:要把多个字符串连接起来,可以用+号连接。如果有很多变量需要连接,用+号就比较麻烦。ES6新增了一种模板字符串${变量名},表示方法和上面的多行字符串一样,但是它会自动替换字符串中的变量

    操作字符串:

    要获取字符串某个指定位置的字符,s[0]

    需要特别注意的是,字符串是不可变的,如果对字符串的某个索引赋值,不会有任何错误,但是,也没有任何效果

    toUpperCase()把一个字符串全部变为大写

    toLowerCase()把一个字符串全部变为小写

    indexOf('world')会搜索指定字符串出现的位置

    substring(2,5)返回指定索引区间的子串


    数组

    请注意,直接给Array的length赋一个新的值会导致Array大小的变化

    Array可以通过索引把对应的元素修改为新的值

    请注意,如果通过索引赋值时,索引超过了范围,同样会引起Array大小的变化

    indexOf()来搜索一个指定的元素的位置

    slice()它截取Array的部分元素,然后返回一个新的Array

    push()向Array的末尾添加若干元素,pop()则把Array的最后一个元素删除掉:

    如果要往Array的头部添加若干元素,使用unshift()方法,shift()方法则把Array的第一个元素删掉:

    sort()可以对当前Array进行排序

    reverse()把整个Array的元素给掉个个,也就是反转

    splice()方法是修改Array的“万能方法”,它可以从指定的索引开始删除若干元素,然后再从该位置添加若干元素:

    concat()方法把当前的Array和另一个Array连接起来,并返回一个新的Array:

    join()方法是一个非常实用的方法,它把当前Array的每个元素都用指定的字符串连接起来,然后返回连接后的字符串


    对象

    JavaScript用一个{...}表示一个对象,键值对以xxx: xxx形式申明,用,隔开。注意,最后一个键值对不需要在末尾加,

    由于JavaScript的对象是动态类型,你可以自由地给一个对象添加或删除属性 delete xiaoming.school

    如果我们要检测xiaoming是否拥有某一属性,可以用in操作符,如果in判断一个属性存在,这个属性不一定是xiaoming的,它可能是继承得到的

    要判断一个属性是否是xiaoming自身拥有的,而不是继承得到的,可以用hasOwnProperty()方法


    循环

    for循环的一个变体是for ... in循环,它可以把一个对象的所有属性依次循环出来

    请注意,for ... in对Array的循环得到的是String而不是Number。

    var a = ['A', 'B', 'C'];

    for (var i in a) {

    alert(i); // '0', '1', '2'

    alert(a[i]); // 'A', 'B', 'C'

    }

  • 相关阅读:
    java1200_060_把数字格式化为货币字符串
    ccf_201712-02
    ccf_201712-01
    算法笔记-----单源最短路径之Bellman-Ford算法
    算法笔记-----贪心算法----加里比海盗船--最优装载问题
    算法笔记-----最优二叉搜索树
    SHTSC2017酱油记
    并不能来一发50AC
    【bzoj4514】: [Sdoi2016]数字配对 图论-费用流
    【bzoj1066】: [SCOI2007]蜥蜴 图论-最大流
  • 原文地址:https://www.cnblogs.com/jingbostar/p/6873996.html
Copyright © 2020-2023  润新知