44 JavaScript

 主要内容:

1 . html 及 css 和jss的区别

  html :文档的结构

  css : 修改文档的外观结构

  javascrip: 实现页面上的动态效果

2 . JS的历史及ECMAScript

  1 )  javascript的概述 :

    javascript是脚本语言, 是一种较轻量级的编程语言; 是可插入HTML页面的编程代码;JavaScript插入HTML页面的编程代码.

  2 )  JAVAScript(雷峰塔)   Java(雷锋)没有实质性的关系

  3 ) ECMAScript  一个标准 ES5/ES6

  4 ) node.js         跑在服务端的js

3 . javascript的引入方式

    <script>console.log(123);</script>   # script标签内写代码
    <script src="script.js"></script>    # 引入额外的js文件

  注释方式:
  \ 单行注释 /*多行注释*/
  结束符:
  JavaScript中的语句要以分号(;)为结束符.

4 . 变量的命名规范:

  1) JavaScript的变量名可以使用_ 数字 字母 $组成, 不能以数字开头.

  2 ) 声明变量使用var变量名的格式进行声明.(变量名区分大小写, 建议使用驼峰式命名规则)

5. JavaScript的数据类型

  1 ) 数值类型 (Number) : javascript 不区分整型和浮点型, 就只有一种数据类型.

var num = 1
undefined
var b = 13.5
undefined
typeof num
"number"
typeof b
"number"

        a : NaN : 是number类型, 表示不是一个数字

parseInt('123')       //返回123
parseInt('abc')       //返回nan 
typeof NaN
"number"
parseFloat('123.456') //返回123.456

  2 ) 字符串( string )

    a : .length            返回长度

var s = 'lililii'
undefined
s.length
7

     b : .trim()              移除空白  

     .trimLeft(), .trimRight() 移除左边的空白和右边的空白

var s = 'libai   '
undefined
s.trim()
"libai"

   c :  .charAt(n)         返回第n个字符

var s = 'dufu '
undefined
var t = s.charAt(3)
console.log(t)               // u

     d : .concat(n1,  )         拼接

    +                            使用+号也可以实现拼接,较为常用

var s = 'tian'
s.concat('tt')
"tiantt"

                                     利用+实现的拼接

s = 'lili'
v = 'uuuu'
console.log(s+v)        // liliuuuu

      e :. indexof                 子序列的位置 

s = 'qwert yuiop'
s.indexOf('q')           // 0
s.indexOf('q', 2)        //-1            如果找不到返回-1

       f : .substring               根据索引获取子序列

s = 'li si ai bi'
s.substring(1, 4)           //"i s"
s.substring(1, -1)          //"l"  如果后面负数的比前面的小, 把后面的变成0, 然后换位置
s.substring(4, 1) //"i s"把后面的数字和前面的数字换位置  h  

            h : .slice()                        切片

s = 'li uu tt uu'
s.slice(1, -1)             //"i uu tt u"   按正常切
s.slice(1, 4)              //"i u"
s.slice(4, 1)              //""            取到空字符          

 substring和slice的区别

    substirng()的特点:

            如果 start > stop ,start和stop将被交换

            如果参数是负数或者不是数字,将会被0替换

    silce()的特点:

            如果 start > stop 不会交换两者

            如果start小于0,则切割从字符串末尾往前数的第abs(start)个的字符开始(包括该位置的字符)

            如果stop小于0,则切割在从字符串末尾往前数的第abs(stop)个字符结束(不包含该位置字符)

          i : .toLowerCase(), .toUpperCase()       大小写

          j : .split ()                                                切割

s = 'li uu tt uu'
s.split(' ')                    // ["li", "uu", "tt", "u  u"]

               k : $ 符格式化

var name = 'lili'
var hobby = 'read book'
var s = `我叫${name}`
console.log(s)        // 我叫lili

    3 ) 布尔值(Boolean)区别于python,ture或false都是小写

var a = true
var b = false
undefined
typeof a             // "boolean"

  ''(空字符串)  0 null  undefined  NaN 都是false

   4 ) null和undefined

    null表示值是真空, 一般是在需要指定或清空一个变量时才会使用,如name=null

    undefined表当声明一个变量但未初始化时, 该变量的默认值是undefined.还有就是当函数没有明确的返回值时,返回的也是undefined 

name = 'alex'
"alex"
name = null
null
name
"null"

   5 ) : 数组: 数组对象的作用: 使用单独的变量名来存储一系列的值. 类似于python中的列表

    a: .length     获取数组的长度

var li = [11, 22, 33, 44]
undefined
console.log(li.length)         //4

          b : .push()   尾部追加元素         .pop()  获取尾部的元素

     c:   unshift()  头部插入元素         .shift() 头部移除元素

var li = [11, 22, 33, 44]
li.push(55)
5
li
(5) [11, 22, 33, 44, 55]
li.pop()
55
li.unshift(9)
5
li
(5) [9, 11, 22, 33, 44]
li.shift()
9
li
(4) [11, 22, 33, 44]

        d : slice()     切片;            .reverse()  翻转             . join()   将数组元素连接成字符串

li = ['a', 'b', 'n']
li.slice(1, 4)          //["b", "n"]
li.reverse()           // ["n", "b", "a"]
li.join('+')            //"n+b+a"

     e : sort排序

var li = [2 , 11, 33, 14]
li.sort()                  //[11, 14, 2, 33]  按照ascii值进行排序
function sortNumber(a, b){
	return a - b}
li.sort(sortNumber)        //[2, 11, 14, 33]  按照数字大小进行排序

    f : splice          删除元素, 并向数组添加新的元素

var li = [11, 22, 33, 44]
li.splice(1, 1)                   //[22]    从第一个位置开始删除一个元素
li.splice(1, 2)                   // [33, 44]从第一个位置开始删除两个元素
li.splice(1)                      //[]       不写第二个参数默认删除一个

li.splice(1, 1, 'aaa')            // [11, "aaa"] 在第一个位置删除一个元素, 并把aaa加到元祖删除的位置中.
li.splice(1, 1, 'aaa', 'bbb')     // [11, "aaa", "bbb"]

  

6 ) 类型查询typeof: 它是一个一元运算符,不是一个函数,也不是一个语句

var li = [1, 2, 3]
s = 'juishi'
typeof li              //"object"
typeof s               //"string"
typeof null            //"object"
typeof NaN             //"number"

6 . 运算符 

  1 )  算术运算符     + - * / % ++ --

  2 )  比较运算符      >  >=  <  <=  !=  ==  ===  !==

2 == '2'
true               #  弱等于 , 判断值是否相等
2 === '2'
false              #  强等于 , 既要判断值相等不相等, 还判断类型是否相等

  3 )  逻辑运算符      && || !

true || false
true
!1            //false
!99           //false
!!1           //true        快速的把一个变量转换成布尔值.

 4 )  赋值运算符    = += -= *= /=

7 . 流程控制

  1 ) if- else

var age = 19;
if (age>18){
	console.log('耶, 成年了');
}else{
	console.log("啦啦啦啦");
}

  2 ) if - else if - else

vara = 10;
if (a > 5){
	console.log('a>5');
}else if (a<5){
	console.log('a<5');
}else {
	console.log('a=5')}

  3 ) switch

var today = 2;
switch (today) {
    case 1 :
	console.log('今天吃红烧肉');
	break;
    case 2 :
	console.log ('宫保鸡丁');
	break;
    case 3 :
	console.log ('清蒸鲈鱼');
	break;
	default :
	console.log('吃泡面!')
}

  4 ) for

for(var i = 0;i < 10; i ++ ){
	console.log(i);
}

  for循环操作列表

var li = [11, 22, 33, 44]
for (var i = 0 ; i < li.length; i++){
	console.log(li[i])
}

  5 ) while

var n = 0;
while (n < 10){
	console.log(n);
	n ++
}

  6 ) 三元运算

var a = 100;
var b = 130;
var c = a > b ? a : b

    Python中的三元运算

a = 12
b = 13
c = a if a > b else b
print(c)

  








         

  

  

原文地址:https://www.cnblogs.com/gyh412724/p/9585934.html