2019独角兽企业重金招聘Python工程师标准>>>

Javascript从零开始学习第一天

Javascript从零开始学习第二天(1)

Javascript从零开始学习第二天(2)

Javascript从零开始学习第三天(1)

Javascript从零开始学习第三天(2)

Javascript从零开始学习第四天(1)

Javascript从零开始学习第四天(2)

零、获得页面元素方式

1、通过ID属性

document.getElementById("ID");

返回一个对象。

2、通过tagname

aInput=document.getElementsByTagName("input");

返回一个数组。aInput[0]就是取得第一个数据元素。

3、不一定是用document

可以容器对象。

var oDiv=document.getElementById("id");

oDiv.getElementsByTagName("li");

从一个div中得到所有的li元素

一、两种方式访问元素属性

1、第一种:html里写的什么,js里写什么

例如:<input type="text" value="输入框的值"/>

使用js:document.getByElementById("input1").value="输入框的值";

2、第二种:使用中括号取值

document.getByElementById("input1")["value"]="输入框的值";

点评:相当于json对象取值方式,使用中括号和key取值。

二、css优先级

*<标签<class<ID<行间style

三、事件

1、行间事件

麻烦、容易被误删除,存在一定的危险性。

2、提取到上层js中

在head标签中添加script标签

绑定事件可以直接按属性

function a(){}

oBtn.οnclick=a;

或者匿名函数

oBtn.οnclick=function(){};

3、执行顺序

绑定事件 可以再window.onload的时候绑定,如果直接绑定,下面元素还没加载的情况下是得不到的

window.οnlοad=function(){

oBtn.οnclick=function(){};

}

4、为一组相同标签添加事件

使用aInput=document.getElementsByTagName("input");

得到一个数组。

但是,js每次只能修改一个元素的行间样式,这里可以使用while循环遍历每一个元素,添加事件。

var i=0;

while(i<5){i++;bindEvent();}

while循环太费劲,改用for循环

for(var i=0;i<5;i++){bindEvent();}

5、自定义属性在各个浏览器中支持是不一样的

<input type="text" index="1"/>

其中在html标签中自定义属性index在浏览器中兼容性是个问题,js访问会出问题。

但是在js中得到input对象后,input.index=1;为input对象添加一个自定义属性后,就可以访问了。

例子:选项卡的使用,通过点击按钮获取自定义index属性,然后通过此属性找到对应序号的隐藏div就可以动态控制选项卡的显示和隐藏了。

6、innerHTML的使用

div.innerHTML="字符串";

7、数组的使用

var arr=[1,2,3];

arr[0]; arr[1]=5;

8、选项卡简单原理

9、javascript的组成

ECMAScript  解释器

DOM Document Object Model 操作html的能力  document对象

BOM Browser Object Model window对象和浏览器打交道

10、浏览器兼容性

ECMA 几乎没有兼容问题

DOM 有一些操作不兼容

BOM 没有兼容问题(是因为完全不兼容) 最好少用

11、变量类型

object undefined number string boolean function

使用typeof可以查看变量类型 typeof "abc"

建议:一个变量应该只存放一中类型的数据

12、显式类型转换 强制类型转换

parseInt("12")=12  parseInt("12px")=12  parseInt("12px32")=12  parseInt("abc")=NaN

原理就是从左到右找不是数字的字符 找到后就停止 把前面的作为数字返回

parseInt("abc")=NaN 不是一个数字 NaN不是数据类型 是一个标志

parseFloat("15.6")用来处理小数的类型转换。

13、判断NaN

var a=parseInt("a");

isNaN(a)=trues说明判断出a不是数字

14、隐式类型转换(三等号)

var a=5;var b="5";结果a==b是true

因为==会先转换类型再比较

我们可以使用===三等号,不转换类型直接比较

这样a===b就是false了

再有:字符串类型加减法

var a='12';var b='5';

a+b='125';但是a-b=7;

这里加号直接链接字符串,减号就隐式转换为数字后相减

这取决于+和-的用法。

加号可用与字符串链接和数字加法,但是减号只能做数字相减

15、变量作用域

局部变量 只能在定义它的函数中使用

全局变量 可以在任何地方都能使用

16、闭包

所谓的闭包其实就是子函数可以使用父函数的局部变量

而且我们一直在使用

window.οnlοad=function(){//父函数

var a=10;

btn.οnclick=function(){//子函数

alert(a);

}

}

function a(){//父函数

var i=1;

function b(){//子函数

alert(i);

}

b();

}

a();

17、命名规范

转载于:https://my.oschina.net/imhoodoo/blog/361356

Javascript从零开始学习第一天相关推荐

  1. JavaScript从零开始 学习记录(三)

    前言 到了我最为感兴趣的部分了,要戒骄戒躁,毕竟还没出发多远,不能想着一步登天,稳扎稳打 笔记范围 从这节视频到那节视频结束 课程目标 能够说出Web APIs阶段与JavaScript语法阶段的关联 ...

  2. GISer从零开始学习ArcGIS API for JavaScriptArcGIS Online教程(二)第一个地图应用

    GISer从零开始学习ArcGIS API for JavaScript&ArcGIS Online教程(二)第一个地图应用 从这篇开始就正式开始使用ArcGIS API for JavaSc ...

  3. 从零开始学习 webservice第一集,java webservice简单实例入门教程

    现在从零开始学习webservice 概念自己百度搜,总之,webservice就相当于一个接口,就像你走进了一家售货店,你不需要知道这家店怎么卖给你东西,你拿着钱去,说我要一包玉溪,人家就会给你返回 ...

  4. JavaScript学习 第一课(一)

    JavaScript学习 第一课(一) 学习内容 一.什么是JavaScript 二.如何引用JavaScript 三.JavaScript使用时注意的事项 四.JavaScript中的保留字与关键字 ...

  5. 《Javascript入门学习全集》 Javascript学习第一季(7)

    Javascript学习第一季(7)   上篇文章我们讲了 用dom方式 创建节点,复制节点,插入节点. 今天我们将讲 删除节点,替换节点,查找节点等. 直接从方法说起: <!--[if !su ...

  6. 从零开始学习VIO笔记 --- 第一讲:基础知识(四元数,李代数)

    从零开始学习VIO笔记 --- 第一讲:基础知识(四元数,李代数) 一. 向量的内积与外积 二. 旋转与平移 2.1 旋转表示 --- 旋转矩阵R 2.2 平移向量 2.3 变换矩阵T与齐次坐标 2. ...

  7. 从零开始学习JavaScript:轻松掌握编程语言的核心技能⑥

    从零开始学习JavaScript:轻松掌握编程语言的核心技能⑥ 1. JavaScript 对象 2. JavaScript 类 3. JavaScript prototype(原型对象) 4. pr ...

  8. 从零开始学习JavaScript:轻松掌握编程语言的核心技能④

    从零开始学习JavaScript:轻松掌握编程语言的核心技能④ 1. JavaScript 表单 1.1 JavaScript 表单验证 2. JavaScript 保留关键字 3. JavaScri ...

  9. 从零开始学习JavaScript:轻松掌握编程语言的核心技能①

    从零开始学习JavaScript:轻松掌握编程语言的核心技能 一,JavaScript 简介 为什么学习 JavaScript? JavaScript 用法 二,JavaScript 输出 JavaS ...

  10. jQuery框架学习第一天:开始认识jQuery

    jQuery框架学习第一天:开始认识jQuery jQuery框架学习第二天:jQuery中万能的选择器 jQuery框架学习第三天:如何管理jQuery包装集 jQuery框架学习第四天:使用jQu ...

最新文章

  1. 1、存在如下数列1、1、2、4、7、13、24、44、81、149......现要求该数列第n项的值(n从O开始算)。 程序运行结果: 1/2 输入:4 输出:7 输入:9 输出:149
  2. Android中为TextView增加自定义的HTML标签
  3. final关键字_Java中的final关键字
  4. 三相pmsm矢量控制仿真模型_低载波比工况下永磁同步电机磁链矢量轨迹分析
  5. Ajax跨域提交JSON和JSONP
  6. java if 赋值语句_Java中有一种特殊的赋值运算叫做三元运算,它和if-else语句类似....
  7. CSDN 技术影响力之星正式揭晓 | 2022 开发者生态汇
  8. Silvaco仿真学习
  9. git合并工具-DiffMerge
  10. 网页端哔哩哔哩4倍速播放视频
  11. SNARK性能及安全——Prover篇
  12. 基于JAVA的KTV点歌系统,管理系统。
  13. 通过PyQt5+PyQtWebEngine+pyecharts建立自己的收入支出记账软件
  14. TSC打印机ttp-247(java)
  15. python3学习笔记
  16. 【学习笔记】人工智能导论
  17. 把QQ聊天记录插入数据库中
  18. Memory limit should be smaller than already set memoryswap limit, update the memoryswap at the same
  19. Codeforces 940E: Cashback 单调队列优化DP
  20. 英语字母c的语言教案,[小班英语教案认识字母]幼儿园小班英语教案:字母C.doc...

热门文章

  1. centos配置网络
  2. 如何使用 Secret?- 每天5分钟玩转 Docker 容器技术(108)
  3. $.ajax()在IE9下的兼容性问题
  4. |Vijos|NOIP2015|模拟|P1975 扫雷游戏
  5. [C#学习]在多线程中如何调用Winform[转]
  6. 安装vmware tools 使用hgfs共享文件一波三折
  7. 危险无处不在 Html标签带来的安全隐患
  8. 解决哈希冲突的三种方法(拉链法、开放地址法、再散列法)
  9. 最近在写个人网站,忙碌中。。。
  10. Rhino学习教程——1.1