javascript基础

1、JAVASCRIPT的组成

DOM  :文档简单来说就是HTML,DOM赋予操作HTML的能力;有一些操作不兼容

BOM: 浏览器对象模型,浏览器对象是window;没有兼容问题

ECMA: 几乎没有兼容性问题

2.常见类型:

基础类型:number、function、object、boolean、string、

其他类型:undefined (1、真的没定义;2、定义,但为给赋值;)

NAN  非数字类型

3、字符串转数字

parseInt(),从左向右解析,非数字时跳出返回数字,

显示类型转换(强制类型转换):

parseInt()用来转换整数,

parseFloat()用来转换成小数,

隐示类型转换:

==和===

减法

isNAN()可以判断出来变量是不是NAN,用来判断输入数字时候判断

4、变量的作用域和闭包

闭包:子函数可以使用父函数的局部变量

5、命名规范

a、类型前缀,命名规范表如下:仅用于变量命名
javascript 变量命名类型变量命名前缀
array 数组a
boolean 布尔值b
float 浮点数l
function 函数fn
int 整型i
object 对象o
regular 正则r
string 字符串s
b、首字母大写,

6、运算符

a、算术: %取模,就是求余数,
取模的应用:
1、各行变色,
思路:用for循环,根据索引值取模来确定变色行数的背景,
for(var i=0;i<ali.length;i++){
               if(i%2 == 0) {
                   代码块
               }else {
                   代码块
               }
            }
2、秒转时间
var s = 156;
var m= parseInt(s/60)+'分'
var ms = (156%60)+'秒'


b、赋值: +=和++相同,只能每次加一
c、逻辑:&&与,||或,!否

7、流程控制

a、判断:if 、switch ,?:
当判断条件较多时,使用switch,语法如下:
switch(变量){
case 值1:
break;
case 值2:
break;
default:
语句N
}
三目运算符:(条件)?语句1:语句2
b、跳出:break和countinue
break中断整个循环,
continue是中断符合条件的循环

c、真假问题
真:true、非零数字、非空字符,非空对象
假:false、数字零、空字符串、空对象、undefined


8、json

json和数组的关系与区别:

a、json的下标是字符串,数组的下标是数字
b、数组有长度,json无长度
c、循环
for ..in适合数组和json

9、函数返回值

函数返回值即函数执行的结果,可以没有return

10、函数传参

arguments 可变参或不定参,参数的个数可变,参数数组

a、求所有参数的和:
function sum(){
       var result=0;
       for(var i=0;i<arguments.length;i++){
           result+=arguments[i]
        }
            return result
}
alert(sum(12,6,8,20,25))



b、css函数,给参数去名字,增强可读性
function css(object,name,value){
            if(arguments.length == 2) {
                //return arguments[0].style[arguments[1]]    //两个参数时候是获取参数
                return object.style[name]
            }else {
               // arguments[0].style[arguments[1]]=arguments[2]  //三个参数时候是设置参数
                object.style[name]=value
            }
        }

c、取非行间样式
使用currentStyle来获取,但不兼容其他浏览器,仅限于iE
chrome,FF则使用getComputedStyle来获取,两个参数,
对于以上两种获取非行间样式的兼容性问题,用真假值解决:
function getStyle(object,name) {
            if(object.currentStyle) {
                //ie
                return object.currentStyle[name]
            }else {
                //chrome,FF
                return getComputedStyle(oDiv,false)[name]
            }
        }
只能取出来单一样式,复合样式需要改写为单一样式。

11、数组的增删改查
增加:array.push()尾部添加
array.unshift()从头部添加
删除:array.pop()尾部删除
array.shift()从头部删除
splice用法:
a、删除:splice(起点,长度) 从起点开始删除长度的个数
b、插入:splice(起点,长度,元素) 从起点开始删除长度的个数,然后插入元素

join(分隔符):用分隔符,组成数组元素,生成字符串,字符串分割用split

sort()排序:
容易引起字符串排序,此时需要用比较函数进行比较,
array.sort(function(n1,n2){
            return n1-n2
            /*if(n1<n2){
                return -1;
            }else if(n1>n2) {
                return 1
            }else {
                return 0
            }*/
        })




12、定时器

setInterval(回调函数,时间)无限制性,间隔型
setTimeout(回调函数,时间)只执行一次,延时型

获取系统时间:
a、 data对象
b、getHours、getMinutes、getSeconds
c、getFullYear(),getMonth(),getDate(),getDay()

13、运动基础

a、offsetLeft获取物体的左边距,计算出来后得出的结论,此属性为只可读属性,不能进行赋值。
b、offsetTop获取物体的上边距


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值