`
明月昏灯
  • 浏览: 11953 次
社区版块
存档分类
最新评论

js笔记

js 
阅读更多
JS,其实就是一种网页的脚本语言。可以控制浏览器,网页的行为。
所以又称之为“动词”;

JS 是一种基于客户端,网页的脚本.JS是一门弱语言。

又由于JS是基于客户的脚本语言。因此它所有的代码不可避免的可以被外界查看。
所以基于两个方面考虑:
1、JS的安全问题。(压缩、混淆代码等)
2、访问速度的问题。 (压缩,加入CDN)

JS基础跟所有的语言一样。都有逻辑判断,循环语句,条件判断,运算符。
只不过JS的运算符+,在跟字符串操作的时候,就会起到连接的作用。
原生的JS,简单但是使用起来较复杂。

JS标识:
1、JS需要在HTML代码中用Script标识的。
2、标准的Script需要加入type属性。type="text/javascript"
3、script的位置根据特定的情况而定。

JS输出:
1、alert( 输出内容 );//警告框
2、console.log( 输出内容 ); //一般用于控制台输出。
注意:一般集合类型,建议都是控制台输出

JS注释:
// 单行
/* */ 多行

JS变量:
所有的变量可以用var声明。

JS运算符:
- + * / % 都可以使用。
1、但是+在运算的时候如果与字符串在一起运算,那么起到的就是连接符的作用。
2、注意:包括字符串在内所有的运算符会遵守优先级。

注意:parseInt("10"); 为强制转化成整型。
parseFloat("10");为强制转化为浮点型。
typeof(10+"");typeof为显示数据类型。

JS三大弹出框:
1、alert 警告框
2、confirm 确认框。返回的是布尔类型
if( confirm("确认要关闭吗?") ){
    window.close();
}
3、prompt 输入框 (标题输入框,默认值)
var a = prompt("请输入你喜欢的动物","猪");
alert( a );

JS数组:
1、定义一个数组:
var arr = new Array();
var arr = [1,2,3,5,5,6,7];
2、往数组里添加一个元素
arr.push(); 注意:是尾部添加
3、从数组里删除一个元素
arr.pop(); 注意:是尾部移除。
4、arr.length 数组的长度
5、遍历:
for( var i = 0 ; i < arr.length; i++ ){
console.log( arr[i] );
}

js 一般把键值对叫做对象。
6、键值对表示方式为:
var arr = { "a" : "b","c":"d" }
取出键值对的值:
arr.a;

var arr = { "a" : [1,2,3,4,5] }
console.log( (arr.a)[2] );

js特殊值:
1、NaN: 无法识别数据类型。一般是由运算造成的。
2、undefined
     1、初始化没有赋值的时候,打印会undefined;
     2、在取值的时候,如果目标值不存在,会打印undefined;
  注意:变量在初始化的时候,默认值是undefined,如果没有给出具体的值,相当于没有找到引用对象,这个时候该引用会去找最近一个有值变量。
3、null 空值
     1、一般是指对象本身是null值的时候打印。
     2、选择器获取不到相关控件的时候,一般会显示null
   
js函数: function 关键字 
function abc(){
     alert( 1 );
}
abc();

1、函数有作用域。
2、作用域内优先使用自己的变量。再考虑作用域外的变量。
3、作用域包括形参。
4、如果在作用域范围内,重新定义,那么它将不会污染全局变量。
5、如果在作用域范围内,直接使用或者定义,那么将可能污染全局变量。
6、在弱语言中,重复定义,没有定义都是没有错的。但是不推荐此种做法。
//动态调用函数方式。
var a = abc; //abc为函数名
a();

//封装函数写法
var a = {
"userName" : "jabez.huang",
"userPwd" : "123456",
init : function(){
return this;
}
};

js三大选择器:
1、ID选择器  document.getElementById("a")
2、Name选择器 document.getElementsByName("a")[]
3、类选择器   document.getElementsByClassName("a")[]
4、Tag选择器 document.getElementsByTagName("a")[]

.value 一般文本框、下拉菜单等只要有value属性设置的值。都可以用value方法获取或者设置。
.checked 用来获取相关 复选框,单选框是否被选中的值。
.innerHTML 用来设置或者获取元素的内容,包括设置或者获取HTML。
.innerText 用来设置或者获取元素的内容,不包括设置HTML。


注意:单选、复选 都需要用checked 属性来判断是否选中。返回的是布尔类型。

JS事件:
1、全局事件。也就是说任何在该页面发生的某种事件,都可以被监听。
2、在外部监听某一个控件的事件的形式。
3、在控件内部监听。

控件内部监听事件:
1、通过传参的方式,获取相关的控件对象的属性值
function goto( dom ){
window.open( dom.value );
}
<input type="text" value="" onclick="goto(this)"/>
2、通过普通的选择器方式,获取相关的控件的值
funtion goto(){
document.getElementById("url").value
}
<input type="text" id="url" onclick="goto()"/>

新语法: url.indexOf("www"),返回找到字符串的索引位置。否则返回-1;
新语法:url.split(","),返回字符串分割后的数组。


JS输出。
1、alert(); 警告
2、console.log(); 控制台

JS基础的变量 var

JS基础的三大弹出框:
1、alert
2、confirm 返回的是布尔类型  确认框
3、prompt 输入框,(标题,默认值)

JS三大特殊值:
1、NaN 无法识别的类型。 一般出现在运算中。
2、undefined
    1、变量未初始化赋值。
    2、通过document找相关的对象,获取不到的时候就是undefined
3、null
    1、该值本身的值为null

强制转换:
1、parseInt
2、parseFloat

JS集合
1、var a = new Array();
2、var b = [1,2,3,4];
3、a.push 在集合尾部加入一个数据。
4、a.pop 在集合尾部移除一个数据。
5、a.length 返回数组的长度。

数组转字符串:
1、join(",")

字符串转数组:
1、split(“”)

字符串语法:
1、indexof() 找到字符串中,出现的位置
2、substr( start, length )
3、substring( start, end )

JS对象,键值对:
var obj = {
  "键1" : "",
  "键2" : function(){

  }
};
可以通过键找到相关的值。
添加一个键值对:obj["a"] = "b";

JS函数。关键字 function。
function a(){ return b; }
this 在函数内部this,就是返回当前调用对象本身。
如果是在js里调用可能就返回windows,如果是控件里调用就返回控件对象。

选择器:
1、ID选择器 document.getElementById()
2、类选择器 document.getElementsByClassName()
3、标签选择器 document.getElementsByTagName()
4、Name选择器 document.getElementsByName()

.value 获取/赋值文本框或一切有value属性的值。
.innerHTML 获取/赋值某一个控件,并且可以使用HTML语法。
.innerText 获取/赋值某一个控件。不可以使用HTML语法。

自定义属性:就是为了方便自己设置获取某些值的属性。
.getAttribute 获取任一控件的属性
.setAttribute 赋值任一控件的属性。

另一种设置style的方式,简单:
document.getElementById("").style.color = "";

JS事件:DOM对象
1、全局的事件

document.onclick = function(){
   alert("1");
}

2、在外部监听的某个控件的事件。

document.getElementById("a").onclick = function(){
   alert("123");
}

3、在控件内部监听事件。

<input type="text" onclick="" />

1、点击事件 onclick
2、失焦事件 onblur 失去焦点,常用于表格填写。
3、聚焦事件 onfocus
4、改变事件 onchange
5、鼠标移动事件 onmousemove
6、鼠标移入事件 onmouseenter 注意:需要表示一个控件
7、鼠标移出事件 onmouseleave
8、鼠标弹起事件 onmouseup
9、鼠标移动元素触发事件 onmouseout
10、鼠标移到元素上  onmouseover
11、键盘事件  onkeyup / onkeydown / onkeypress
    keyCode = 回车 13
    keyCode = 左 37 上 38 右 39 下 40
    keyCode = 空格 32
分享到:
评论

相关推荐

    狂神说系列 JavaScript笔记

    【狂神说系列 JavaScript笔记】是一份全面且深入的JavaScript学习资源,旨在帮助开发者和初学者深入理解这门广泛应用于Web开发的脚本语言。这份笔记涵盖了JavaScript的基础语法、核心概念以及高级特性,旨在构建一个...

    javascript笔记 javascript笔记

    - **解释:** 这段代码会引入名为`java.js`的外部JavaScript文件。例如,在`java.js`文件中可以写入: ```javascript document.write("Hello World!"); ``` ### 组合使用JavaScript和HTML 通过组合使用...

    李立超JavaScript基础篇笔记

    JavaScript,简称JS,是由Brendan Eich在1995年创造的一种高级编程语言,最初目的是为了增强网页的交互性,特别是在前端进行表单验证。JavaScript不是Java的子集,两者之间没有直接关联。JS起初名为LiveScript,但在...

    传智播客JS笔记

    "传智播客JS笔记"提供了一套全面且易于理解的学习资源,特别适合初学者掌握JavaScript的基础和核心概念。以下是对笔记中可能包含的重要知识点的详细解释: 1. **变量与数据类型**:JavaScript 支持动态数据类型,这...

    html+css+javascript笔记完整版

    "html+css+javascript笔记完整版"是一份全面的前端学习资源,涵盖了从基础到进阶的HTML、CSS和JavaScript知识。通过深入学习,你可以掌握创建交互式、响应式网页所需的所有技能,并为进一步探索前端开发的广阔领域...

    黑马JavaScript笔记二.md

    黑马JavaScript笔记二.md

    css+html+js笔记

    在提供的压缩包文件中,"JavaScript笔记完整版.doc"可能涵盖了JavaScript的基本语法、DOM操作、事件处理、Ajax请求等内容;"html笔记.docx"可能讲解了HTML标签的使用、HTML5新特性、语义化标签等;"div+css笔记.docx...

    js笔记.md

    js笔记.md

    JavaScript_Demo,文章《JavaScript笔记》配套代码

    这篇文章《JavaScript笔记》的配套代码提供了丰富的实例,旨在帮助读者深入理解和掌握JavaScript的基本概念、语法以及应用技巧。 首先,我们来看看“JS笔记”部分。在学习JavaScript时,理解变量的声明、数据类型...

    韩顺平javascript笔记(最全整理 dom编程 oop 基础语法)

    韩顺平老师的JavaScript笔记全面涵盖了基础语法、面向对象编程以及DOM编程,这些都是学习JavaScript时至关重要的知识点。 首先,基础语法是JavaScript学习的基石。包括变量声明(var、let、const)、数据类型(如...

    javascript笔记

    javascript入门笔记包括javascript简介、javascript语法、javascript流程控制、函数、数组等

    html-css-js笔记

    这是关于html-css-js 笔记,希望可以对初学者有一些帮助!

    韩顺平Javascript笔记完整版.pdf

    韩顺平Javascript笔记完整版.pdf ,配合视频看效果比较好

    js 笔记 javascript 学习笔记

    本学习笔记将深入探讨JavaScript的核心概念,包括变量、数据类型、操作符、控制流程、函数、对象、数组、原型链、闭包等,并结合实际示例,如my.js、order.js、login.js等文件,来讲解其在实际项目中的应用。...

    javascript 笔记 适合初学者 jquery chm 资料

    这份"javascript笔记"可能是作者根据自己的学习和实践整理而成,对初学者来说是非常宝贵的资源。笔记中可能涵盖了变量声明、数据类型(如字符串、数字、布尔值、对象、数组等)、运算符、流程控制(如条件语句和循环...

    creator nodejs js笔记

    这篇笔记主要聚焦在CocosCreator游戏开发环境中,如何结合Node.js和JavaScript进行高效能的应用程序开发。Node.js是一个开放源代码、跨平台的JavaScript运行环境,它允许开发者在服务器端运行JavaScript代码,极大地...

    韩顺平 javascript 笔记 js面向对象 笔记 韩顺平 完整版

    在韩顺平的JavaScript笔记中,他深入讲解了JS面向对象编程的各个方面,包括变量的作用域、对象引用、this关键字的使用以及对象的方法。 首先,变量的作用域在JavaScript中是一个关键概念。带var和不带var声明的变量...

    js笔记js笔记js笔记js笔记

    js笔记js笔记js笔记js笔记

    黑马JavaScript笔记一.md

    黑马JavaScript笔记一.md

Global site tag (gtag.js) - Google Analytics