js:放在bady标签的底部,保证页面加载完成后才加载js

js注释:// 单行注释

    /*多行注释*/

js有两种存在形式:

  1. 以文件的形式存在,使用时引用在head标签里<script src="js文件名.js"> 第一种 </script>
  2. 在bady标签的底部写入:

      <script>
                function f1(){
                           js的函数体
                    }
            </script>

js中变量声明 : name='vera';   //全局变量

       var age= 18;  // 局部变量, 注: var 必须写

js 数据类型:

    其中包括数字、字符串、数组(字典)

    定义数字:var age = 18;
         var age = Number(18);

    布尔值:Boolean

        Boolean(1)    true

        Boolean(0)     false

    字典的定义:var dic={'k1':v1,'k2':v2}

    字符串转化为数字 :Number('123');
              parseInt('123');

    console调试器查看类型:console.log(age,typeof age); 
    数字类型整型转换:var age=18.9

                         console.log(parseInt(age));      结果=18
                                            console.log(parseFloat(age));   结果=18.9(js中是没有浮点型的)

    直接定义多个变量:var v1=21; v2=1233; v3=222;

js中null和undefined的区别:

  null:表示一个值被定义了,但这个值是空值

  undefined:表示缺少值,即此处应该有值,但还没有被定义

var xx='  i love you  ';

关于字符串的小方法:

xx.trim() 移除字符串左右空格
xx.trimleft() 移除字符串左边的所有空格
xx.trimright() 移除字符串右边的所有空格
xx.charAt(2) 索引取值,取到2 位置的字符
xx.substring(1,2)             获取字符串的子序列(类似切片)                                     
xx.indexOf('2') 获取2位置的下标
xx.length 获取字符串长度

数组(相当于Python中的列表):

  数组创建的两种形式:var  li=[11,22,33];

            var  li = Array(11,22,33);

关于数组的小方法:

li.push(88) 把88添加到数组最后
li.unshif10('oo') 把字符串放在了数组的最前面
li.splice(1,0,'vera') 把字符串的指定位置(1位置),中间位置的0是固定的,写为0才会进行插入
i = li.pop() 移除最后的元素,有返回值
m = li.shift() 移除最前面的元素,有返回值
x = li.splice(1,2) 移除1位置后面的2个元素,有返回值
k=li.slice(0,2) 切片,拿到的0到2位置的元素
l = li.concat(n) 把n数组和li数组合并为一个新的数组
li.reverse() li 反转,在本身的基础上
n = li.join('-') 给数组加上短线"11-22-33-44"( python 里写法:"-".join(li))

/* js中的序列化 */
  序列化: s=JSON.stringify('sdklfkjdfls');

  反序列化: m=JSON.parse(s);

/* js中的for循环 */

var li=[11,22,33,44];

数组获取数据1

for(var item in li){
  console.log(item);
} //输出索引

数组获取数据2

for(var i=0;i<li.length;i++){
  console.log(li[i])
} // 输出li中的数据

var dic = {'k1':11,'k2':22}

字典获取数据
for(var item in dic){
  console.log(li[item]);
} // 只能输出key

for(var key in dic){
  console.log(key,li[key])
} // 输出key和value

/*条件语句与异常处理*/

while条件语句:

  while(true){
    continue;
    break; // 和Python里一样
  }

if else条件语句

  if(条件){

  } else if(条件){

  }else{

  }

switch语句

var name=111;
switch(name){
  case 1:console.log('11');
     break;
  case 2:console.log('22');
     break;
  default:console.log('ddd');
     break;
}

异常处理                                                                               
try{

  // 可能出现错误的语句

}catch(e){

  // 捕获到错误进行处理

}finally{

  // 没捕获到错误或捕获到错误进行提示,无论前面成功与否都会执行

}

/*js函数*/

关键字:function

普通函数

function func(arg){    // arg; 形式参数

  console.log(arg);

  return 'hello';   // 返回值

}

调用:var ret=func(123);

   console.log(ret);

匿名函数

var f = function(arg){ // 函数名为f
  console.log(arg); // console.log()打印
};

调用  :   f(123);

自执行函数

定义一个函数,并自己执行函数,形式:()();

自执行函数:用于自定义的js或jQuery的类库时,
当用户浏览器解释的时候,一旦解释到js文件,可以自动执行里面的东西;

例:
  (function(){
    console.log(111);
  })();                  //结果;111

例2:
  (function(arg){
    console.log(111,arg);
  })('alex');          // 'vera' (传给形式参数) ,自动执行结果:111 'alex'

js模拟面向对象

function Foo(name,age){
  this.Name=name;
  this.Age=age;
  this.Func = function(arg){
  return this.Name+arg;
  }
}

调用:var obj = new Foo('Vera', 18);

   console.log(obj.Name);    //结果:Vera
   console.log(obj.Age);        //结果:18
   var ret = obj.Func('beautiful');
   console.log(ret);                  //结果:Verabeautiful

html_javascript的更多相关文章

  1. html_javascript 基础操作

    <!DOCTYPE html> <html> <body> <h1>My Web Page</h1> <p id="demo ...

  2. 《2013传智播客视频》-wmv,avi,mp4.目录

    \!--14俄罗斯方块\视频\.复习.avi; \!--14俄罗斯方块\视频\ 复习.avi; \!--14俄罗斯方块\视频\ 形状旋转.avi; \!--14俄罗斯方块\视频\ 判断形状能否变形.a ...

随机推荐

  1. C++ 黑白棋AI minimax+alphabeta剪枝

    没事写着玩玩,通过debian上的黑白棋测试,搜了10层,打hard应该问题不大 #include <cstdio> #include <cstring> using name ...

  2. MFC:编辑区 Edit 的属性及使用

    Edit Control 编辑控件是 MFC 中使用较多的控件之一 1. Edit 的属性 Acccept Files -> True 控件接受拖放文件 Multiline -> True ...

  3. JS学习笔记Day23

    一.什么是Promise (一)Promise是ES6新增的解决异步(非阻塞)中存在的问题而产生的构造函数 二.Promise中的三种状态 pending(进行中) resoved(成功后) reje ...

  4. DML、DDL、DCL的分别是什么

    DML.DDL.DCL的分别是什么 一直以来,分不清这三者的简称代表什么,甚至在面试中遇到可能会张冠李戴.今天特意记录一下. 一.DML(data manipulation language) 数据操 ...

  5. Turtle库的学习积累

    1.什么是turtle库 Python的Turtle库是一个直观有趣的图形绘制函数库,Turtle英文翻译过来是乌龟的意思,在绘图时可以想象成一只乌龟在移动. 2.绘图坐标体系 海龟的移动方向 3.绘 ...

  6. PMP知识点(四)——项目管理计划的内容

    项目管理计划([4.2制定项目管理计划]的输出) 包含三个基准和十三个子计划和一些其他内容 三个基准:成本基本.进度基准.范围基准 其中范围基准([5.4创建WBS]的输出)包含了:项目范围说明书.W ...

  7. vue项目中遇到的那些事。

    前言 有好几天没更新文章了.这段实际忙着做了一个vue的项目,从 19 天前开始,到今天刚好 20 天,独立完成. 做vue项目做这个项目一方面能为工作做一些准备,一方面也精进一下技术. 技术栈:vu ...

  8. 20164305徐广皓 - Exp1 PC平台逆向破解(5)M

    1.逆向及Bof基础实践说明        1.1实践目标 实践对象:pwn1的linux可执行文件 实践目的:使程序执行另一个代码(ShellCode) 实践内容: 手工修改可执行文件,改变程序执行 ...

  9. idea如何快速查看接口的实现类

    查找接口的实现类: IDEA 风格 ctrl + alt +B 在按F2查看详细文档注解 查看类或接口的继承关系: ctrl + h

  10. Urban Elevations UVA - 221

    题目大意:给出建筑的俯视图,以及每个建筑的左下角坐标,宽度,长度,高度.求正视图可观察到的建筑的编号 思路:建筑物的可见性等于南墙的可见性,依据左下角排序后,逐个判断每个建筑是否可见.对南墙的x坐标进 ...