1.js基础(以通俗易懂的语言解释JavaScript)
ECMAScript: 解释器、翻译 -->几乎没有兼容问题
DOM: Document Object Model -->有一些操作不兼容
BOM: Browser Object Model -->没有兼容问题(完全不兼容)
2.常见变量类型(typeof):
(基础面试题常考)
值类型:number、string、boolean、undefined
引用类型: object、function
经验:一个变量应该只存放一种类型的数据
显式类型转换(强制类型转换):parseInt()、parseFloat()
隐式类型转换:==(先转换类型,然后比较)
===(不转换类型直接比)
减法
3.变量作用域和闭包:
变量作用域:(即作用范围,-js里没有块级作用域,-只有函数和全局作用域)
-局部变量:只能在定义它的函数里面使用
-全局变量:在任何地方都能用
闭包:子函数可以使用父函数中的局部变量
4.命名规范:
可读性——能看懂
规范性——符合规则
匈牙利命名法:类型前缀(变量取名时用,函数不需要)、首字母大写
|
类型 |
前缀 |
类型 |
实例 |
|
数组 |
a |
Array |
aItems |
|
布尔值 |
b |
Boolean |
bIsComplete |
|
浮点数 |
f |
Float |
fPrice |
|
函数 |
fn |
Function |
fnHandler |
|
整数 |
i |
Integer |
iItemCount |
|
对象 |
o |
Object |
oDiv1 |
|
正则表达式 |
re |
RegExp |
reEmailCheck |
|
字符串 |
s |
String |
sUserName |
|
变体变量 |
v |
Variant |
vAnything |
5.运算符中%取模(求余)的简单实例:
隔行变色:
var aLi=document.getElementsByTagName('li');
for(var i=0;i<aLi.length;i++){
//i 0 1 2 3 4 5 6....
if(i%2==0){
//0 2 4 6 8 10
aLi[i].style.background='#CCC';
}
else{
//1 3 5 7 9
aLi[i].style.background='';
}
}
秒转时间:
var s=1345;
alert(parseInt(s/60)+'分'+s%60+'秒');
6.程序流程控制:
判断:if、switch、?:
if(条件1)
{
//语句1
}
else if(条件2)
{
//语句2
}
else
{
//语句n
}
switch(变量)
{
case 值1:
//语句1
break;
case 值2:
//语句2
break;
......
default:
//语句n
}
条件?语句1:语句2 //三元运算符
循环:while、for
while(条件) {
//语句
}
for(初始化;条件;自增){
//语句
}
跳出:break、continue
for(var i=0;i<5;i++){
if(i==2){
//break; //整个循环中断了
continue; //本次循环中断了
}
alert(i);
}
真假:
真:true、非零数字、非空字符串、非空对象
假:false、数字零、空字符串、空对象(null)、undefined
7.json:
json与arr的区别:
var json={a: 12, b: 5, c: 7};
var arr=[12, 5, 7];
alert(json['a']); //下标不同
alert(arr[0]);
alert(json.length); //undefined
alert(arr.length);
//arr循环两种方法皆可
for(var i=0;i<arr.length;i++){
alert('第'+i+'个东西:'+arr[i]);
}
for(var i in arr){
alert('第'+i+'个东西:'+arr[i]);
}
//json的循环
for(var i in json){
alert('第'+i+'个东西:'+json[i]);
}
(ps:本内容整理于blue视频教程及个人学习过程中总结,持续更新中)
1.js基础(以通俗易懂的语言解释JavaScript)的更多相关文章
- 2.js深入(以通俗易懂的语言解释JavaScript)
1.函数返回值: 即函数的执行结果 可以没有return 经验:一个函数应该只返回一种类型的值 2.函数传参 可变参(不定参):arguments ——>(参数的个数可变,参数数组) 例子1:求 ...
- 3.定时器的使用(以通俗易懂的语言解释JavaScript)
1.定时器的作用: 开启定时器:setInterval -->间隔型 setTimeout -->延时型 区别:setInterval会一直执行,应用如微博间隔一段时间不断请求后台数据,看 ...
- 通俗易懂的语言描述JavaScript原型
这是一个翻译.原文地址http://javascriptissexy.com/javascript-prototype-in-plain-detailed-language/# 原型(prototyp ...
- 【 js 基础 】【读书笔记】Javascript “继承”
是时候写一写 “继承”了,为什么加引号,因为当你阅读完这篇文章,你会知道,说是 继承 其实是不准确的. 一.类1.传统的面向类的语言中的类:类/继承 描述了一种代码的组织结构形式.举个例子:“汽车”可 ...
- Web3D编程入门总结——WebGL与Three.js基础介绍
/*在这里对这段时间学习的3D编程知识做个总结,以备再次出发.计划分成“webgl与three.js基础介绍”.“面向对象的基础3D场景框架编写”.“模型导入与简单3D游戏编写”三个部分,其他零散知识 ...
- 前端-js基础
HTML三把利剑之一,浏览器具有解析js的能力 一.js基础 在HTML中可以将JavaScript/JS的代码写在head中,被script标签所包裹,当浏览器解释HTML时,遇到style标签时, ...
- 二、JavaScript语言--JS基础--JavaScript入门篇
1.如何插入JS 使用<script>标签在HTML网页中插入JavaScript代码.注意, <script>标签要成对出现,并把JavaScript代码写在<scri ...
- js基础(一)
javascript基本介绍(一) (后面我会持续写关于关于js的知识,里面写了很多js的小细节大家可以看下希望对大家有帮助,同时希望大家如果感觉有帮助的话可以帮忙顶一下,谢谢了) Javascrip ...
- 前端面试题目汇总摘录(JS 基础篇)
JS 基础 JavaScript 的 typeof 返回那些数据类型 object number function boolean undefined string typeof null; // o ...
随机推荐
- 数字三角形 (简单DP)
问题描述 小Hi和小Ho在经历了螃蟹先生的任务之后被奖励了一次出国旅游的机会,于是他们来到了大洋彼岸的美国.美国人民的生活非常有意思,经常会有形形色色.奇奇怪怪的活动举办,这不,小Hi和小Ho刚刚下飞 ...
- [转]Reporting Services 中的身份验证类型
本文转自:https://docs.microsoft.com/zh-cn/previous-versions/sql/sql-server-2008/cc281310%28v%3dsql.100%2 ...
- html+ashx制作网页发布之后遇到的问题
html+ashx发布之后访问不了ashx文件.(开发时一直是对的) .NETFramework开发时是4.5,服务器上的网站是2.0的. 开始意识到这个问题,发布时选择4.5的Framework.之 ...
- nodejs 的序列化与反序列化
1.序列化 stringify函数的作用就是序列化对象,也就是说将对象类型转换成一个字符串类型(默认的分割符("&")和分配符("=")),先介绍它的基 ...
- 第19课-数据库开发及ado.net ADO.NET--SQLDataReader使用.SqlProFiler演示.ADoNET连接池,参数化查询.SQLHelper .通过App.Config文件获得连接字符串
第19课-数据库开发及ado.net ADO.NET--SQLDataReader使用.SqlProFiler演示.ADoNET连接池,参数化查询.SQLHelper .通过App.Config文件获 ...
- 【Tomcat】JVM,Tomcat,Servlet,Tomcat中的应用。彻底弄懂这些概念之间的联系
tomcat和tomcat中的应用(即webapps下的war包)是运行在同一个jvm中的,但分工不同. tomcat的角色是“调度员”,而你的应用的角色是“工作者”,tomcat处理一个请求的大致过 ...
- angularjs 2.0 简单入门1
一:首先要写json文件,并下载所有的包 1,在任意目录下新建文件夹 命名为angular2Dome,也可以使用命令 mkdir angular2Dome 回车. 2,在angular2Dome文件 ...
- Number Sequence(hdu4390)
Number Sequence Time Limit: 10000/3000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Tot ...
- JSON.parse()与JSON.stringify()高级用法
JSON.parse()与JSON.stringify是将JSON对象与字符串互相转换的方法,它们还有一些参数可以让我们在实际应用中更加方便,现在介绍一下它们的高级用法 JSON.parse() JS ...
- kvm 创建新虚拟机命virt-install 使用说明
virt-install 命令说明 1.命令作用 建立(provision)新虚拟机 2.语法 virt-install [选项]... 3.说明(DESCRIPTION) vi ...