JS 总结----基础部分
javascript基础:
1.每个属性都可以加ID
2.写函数的时候注意 == 和 = 不要写错了
3.html里面怎么写js里面就怎么写,但是有一例外 className
比如oDiv.class = 'box';必须要写成oDiv.className = 'box';因为class在js里面是关键字
4.通过Js给元素加属性可以避免兼容性问题
5.字符串拼接用加号的时候注意优先级,拿不准的时候就用小括号
eg: ...+1+1+... ==11
...+(1+1)+... ==2
6.JS中两种设置属性的方法:
oDiv.style.height = 100px;
oDiv.style.['height'] = 100px;
并且,在JS中能用点设置属性的地方都可以用中括号设置属性
7.变量与字符串的区别的应用:
'a':字符串(仅仅代表一个字符串)
a:变量(a里面放什么不固定)
8.JS通过style添加的样式都是加在了行间,用alert去取也是取得是行间样式,如果把这个样式设置在<style>里面或者外部css,都无法通过style取到
比如,用className设置的是外部样式,但style设置的是行间样式,如果混用这两种样式,可能会导致行间样式的优先级大于外部样式,而使外部样式失效。
建议:要么只是用行间,要么只是用外部样式。
9.把函数给onclick的时候可以不加括号(onclick必须要接受一个函数)
eg:法一:a.onclick = m; // m为一个函数
法二:a.onclick = function() {}; //取一个匿名函数
10. window.onload = function() {};
11.把script脚本放在前面的head里面,最好加上window.onload
把script脚本放在后面的body里面,可以不加
12. 3+4默认是字符串拼接 结果应该是34 而不是7 如果要使其结果为7,首先应该用parseInt强制类型转换,或者其他类型转换的操作
13.闭包:子函数可以使用父函数的局部变量
14.JS命名规范 41min

============================================================================
json的循环:
for (var i in json) {
alert('第' + i + '个东西:' + json[i]);
}
数组的length:
1.不仅可以读也可以写
a.length = 3; // 当length>3时,相当清空数组
2.添加与删除:
push:尾部添加
pop:尾部弹出
shift:头部弹出
unshift:头部添加
3.splice的几种用法:
// 1:删除:splice(起点,长度) 从2号元素开始,以此删除3个
// arr.splice(2, 3);
//2:插入:splice(起点,0,元素...)
// arr.splice(2, 0, 'a', 'b', 'c');
//3:替换:splice(起点,长度,元素)长度和元素的长度必须相等
// arr.splice(2, 2, 'a', 'b');
charAt:解决字符串脚标的兼容性
appendChild:
(包含两个步骤)
1.先把元素从原有父级上删掉
2.添加掉新的父级
eg:oUl2.appendChild(oLi);
=================================================================
深入javascript:
可变参(不定参):arguments
参数的个数可变,参数数组
Js第二定律:但凡是好东西,一定不兼容 哈哈!
=================================================================
易错:
1.window.onload = function(){}; // 结尾注意加分号
(不是window.onload() = function() {};)
函数结尾都要记得加分号
onload 后面没有小括号!
2.aDiv[i].style.background = 'red'; //red加小分号
3.length & lenght
soso:
input titile属性是不是被废弃?
q:
input 的name属性:
name 属性规定 input 元素的名称。
name 属性用于对提交到服务器后的表单数据进行标识,或者在客户端通过 JavaScript 引用表单数据。
注释:只有设置了 name 属性的表单元素才能在提交表单时传递它们的值。
<input type="checkbox" name=""> checkbox是表示复选框
JS 总结----基础部分的更多相关文章
- node.js学习(二)--Node.js控制台(REPL)&&Node.js的基础和语法
1.1.2 Node.js控制台(REPL) Node.js也有自己的虚拟的运行环境:REPL. 我们可以使用它来执行任何的Node.js或者javascript代码.还可以引入模块和使用文件系统. ...
- Node.js系列基础学习----安装,实现Hello World, REPL
Node.js基础学习 简介 简单的说 Node.js 就是运行在服务端的 JavaScript.Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台.Node.js是一 ...
- css+js+html基础知识总结
css+js+html基础知识总结 一.CSS相关 1.css的盒子模型:IE盒子模型.标准W3C盒子模型: 2.CSS优先级机制: 选择器的优先权:!important>style(内联样式) ...
- JavaScript基础精华02(函数声明,arguments对象,匿名函数,JS面向对象基础)
函数声明 JavaScript中声明函数的方式:(无需声明返回值类型) function add(i1, i2) { return i1 + i2;//如果不写return返回 ...
- JavaScript--我发现,原来你是这样的JS(基础概念--灵魂篇,一起来学js吧)
介绍 这是红宝书(JavaScript高级程序设计 3版)的读书笔记第三篇(灵魂篇介绍),有着剩下的第三章的知识内容,当然其中还有我个人的理解.红宝书这本书可以说是难啃的,要看完不容易,挺厚的,要看懂 ...
- js复习--基础
最近工作遇到了一些小困难,基础真的很重要,漫天高楼起于地. 一,script元素 包括type=“text/Javascript”,defer延迟到html加载完解析,src=“../../test. ...
- 第八节 JS运动基础
运动基础 让Div运动起来 速度——物体运动的快慢 运动中的Bug 不会停止 速度取某些值会无法停止 到达位置后再点击还会运动 重复点击速度加快 匀速运动(速度不变) 运动框架及应用: 运动框架: 在 ...
- JS零基础一步一步做应用全记录
1.起因 作为几个外卖重度依赖癌晚期患者,呆宿舍的时候几个人一起叫外卖已经是常事.偶然看到隔壁宿舍在饿了么订餐的时候,看到在饿了么的首页上有一个谁去拿外卖的一个小游戏/工具,感觉这个小细节,饿了么把握 ...
- 认识JS的基础对象,定义对象的方法
JS的基础对象: 1.window //窗口对象 2.document //文档对象 3.document.documentElement //html对象 4.docume ...
- 贰、js的基础(一)
1.js的语法 a.区分大小写 b.弱类型变量:变量无特定类型 c.每行结尾的分号可有可无 d.括号用于代码块 e.注释的方法与c语言和java相同 2.变量 注意事项: a.通过关键字var来声明. ...
随机推荐
- OpenCV分通道显示图片,灰度,融合,直方图,彩色直方图
代码有参考跟整合:没有一一列出出处 // split_rgb.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <io ...
- Oracle ERP系統借贷关系表
系统分步骤产生的分录: 1)库存模块作接收时产生的分录为: 借:材料采购 (采购单价X订单数量) 贷:应计负债 (采购单价X订单数量) 2)库存模块作检验入库时产生的分录为: 系统产生的分录分别为: ...
- C语言之多线程机制(程序可以同时被执行而不会相互干扰)
接触过linux的人或多或少知道,linux有多线程的机制,也就是说程序可以同时执行,不受干扰,关于这个在我以前的博文里有过类似模拟的时间片轮转程序,跟这个其实是类似的.其实在window上,线程的头 ...
- 关于Html5发展和应用前景
现在的HTML5就像当年崭露头角时的Ajax,有人在做,但不知道叫它什么.最近,苹果在 HTML5上大做文章,而著名的Web设计师Eric Meyer则提出了Web Stacks的概念.Alex Ke ...
- LeetCode之旅(19)-Power of Two
题目 Given an integer, write a function to determine if it is a power of two. Credits: Special thanks ...
- Java数据类型之byte、char
Java 有8中基本数据类型,分别是byte.int.long.char.float.double.boolean. 1.byte.char的简单介绍 有时候总是搞不清byte.char,所以就现在好 ...
- rails常用命令备忘
rails new xxx 创建一个新rails项目 rails generate scaffold xxx 创建表模型,视图,控制器和迁移的"脚手架" rake db:migra ...
- java多线程的基础-java内存模型(JMM)
在并发编程中,需要处理两个关键问题:线程之间如何通信,以及线程之间如何同步.通信是指线程之间如何交换信息,在命令式编程中,线程之间的通信机制有两种:内存共享和消息传递. 同步是指程序中用于控 ...
- ubuntu18.04 安装mysql 5.7.22
后台下载,脱离终端控制 后台下载,可以节省ssh资源占用,且不会因为ssh连接断开而导致下载失败,适用于操作远端云服务器 wget -b 启动后台下载 -o 指定logfile(记录下载进度信息) w ...
- Hazelcast3.2文档目录翻译
整理google共享磁盘找到了2014年翻译的Hazelcast官方文档的目录,分享出来可能会对英语不好的同学有些帮助吧. The_Book_of_Hazelcast_r1.2-中文目录 The_Bo ...