美文网首页@IT·前端Web前端之路技术干货
JS新手必过之—基础知识(1)

JS新手必过之—基础知识(1)

作者: _三月 | 来源:发表于2017-03-01 11:12 被阅读454次

1.组成部分####

  • DOM(Document Object Model ):文档对象模型;DOM树,本身为我们操作页面元素提供了一套方法(API)。
  • BOM(Browser Object Model):浏览器对象模型 核心对象(window loacation )。
  • ECMAScript:规定js的核心语法,js语句,关键字,保留字

2.两种数据类型####

  • 基本数据类型(简单数据类型):
    string 字符串类型
    number 数值
    boolean 布尔类型(true | false)
    undefined 未定义
    null 空(对象)
  • 复杂数据类型(复合数据类型):
    Object 对象类型
    Array 数组类型
    Funcation 函数类型
    Date 日期类型
    Math 对象
    String 对象
    Number 对象
    Boolean 对象...

3.赋值、等于和全等说明####

   赋值(=):把一个变量赋上具体的数据;
   等于(==):比较的时候只判断数值是否是相等的;
   全等(===):比较的时候不仅要比较数据还需要比较类型;
   不等于(!=)
   不全等于(!==)

 var str1 = "让我掉下眼泪的,不止你的温柔";  //string类型
 var str2 = "让我掉下眼泪的,不止你的温柔";  //string类型
 console.log(str1 == str2);  //true

 var test1 = 1;      //number类型
 var test2 = "1";    //string类型
 console.log(test1 == test2);    //true
 console.log(test1 === test2);  //false

4.关系运算符####

    返回值:布尔类型,要么是true要么是false,一般用于判断语句中.
    大于 >
   小于 <
   大于等于 >=
   小于等于 <=

5.逻辑运算符####

  • 逻辑非(!) 取反
  • 逻辑或(||)
    语法:表达式1 || 表达式2
    结果: 判断表达式1,如果表达式1为真,那么就返回表达式1,如果表达式1的值为假,那么就返回表达式2;
    var resultA = 3 || 2;   //3
    var resultB = 0 || 2;   //2
    var resultC = 5 || 0;   //5
    var resultD = 0 || 0;   //0
  • 逻辑与(&&)
    语法:表达式1 && 表达式2
    结果: 如果表达式1为真,返回表达式2,如果表达式1为假,返回表达式1
    var resultA = 3 && 2;   //2
    var resultB = 0 && 2;   //0
    var resultC = 5 && 0;   //0

6.值类型和引用类型####

  • 值类型:
    string、number、 boolean、undefined
  • 引用类型:
    object类型
    区别:值类型存储的是具体的值,引用类型存储的是指向具体的地址(引用);
//值类型的数据
    var str = "喜洋洋";  //string
    var num=23;         //number
//引用类型的数据
var person= {
        name:"老王",
        age:38,
        dog:dog
    };
var dog = {
        name:"阿黄",
        color:"黄色"
    };
var arr=[1,2,3,4,5];
  • 值类型和引用类型的赋值
    ①值类型赋值:
    把右边变量存储存储的值(具体的数据)复制一份给左边的变量
    ②引用类型赋值:
    把右边变量存储存储的值(指向具体数据的地址)复制一份给左边的变量
    区别
    值类型的赋值是简单数据的复制,他们保存在相对独立的空间中,彼此不会影响,引用类型赋值修改了某个对象的属性,对另外一个对象的属性会有影响;
值类型赋值:
    var str1 = "我是MT";
    var str2 = str1;
    console.log(str1);   //'我是MT'
    console.log(str2);   //'我是MT'
    str1 = ''哈哈哈'';
    console.log(str1);   //'哈哈哈'
    console.log(str2);   //'我是MT'
引用类型赋值:
var person1 = {
        name:"余小花"
    }
var person2=person1;
console.log(person1.name);   //'余小花'
console.log(person2.name);   //'余小花'
person1.name=''张全蛋'';
console.log(person1.name);   //'张全蛋'
console.log(person2.name);   //'张全蛋'
  • 值类型和引用类型在函数中的使用
    函数里面的相关术语
    实参(实际参数):
    形参(形式参数):占位的变量,没有调用函数的时候形参是没有值
    函数的调用:默认会把实参的值赋值给形参
    区别:值类型作为函数的参数,实参和形参他们的数据是相互独立的。引用类型作为函数的参数,形参和实参共享同一份数据,修改其中的某个对象对另外一个对象也会有影响
 //01 值类型作为函数的参数传递
    var number = 22;
    function funcName(n) {
        //n = number; 内部默认的实现
        n = 11;
        console.log(n);   
    }
    funcName(number);  //11
    console.log(number);  //22(未修改number的值)
    //02 引用类型作为函数的参数传递
     对象替换了形参,对实现没有影响:
    var obj = {name:"小月"};
    function funcName(param) {
        param = {//此行参数重新赋值,并非修改
            name:"张明明"
        }; 
        console.log(param.name);
    }
    funcName(obj);  //张明明
    console.log(obj.name); //''小月''
 修改了形参,同时对实参也有影响:
var obj = {name:"小月"};
function funcName(param) {
    param .name=''哈哈哈''//此行修改了参数
    console.log(param.name);
}
funcName(obj);  //哈哈哈
console.log(obj.name); //''哈哈哈''

暂时就先写这么多,后续慢慢更新,希望大家喜欢,不足之处欢迎指正,O(∩_∩)O谢谢!

相关文章

网友评论

    本文标题:JS新手必过之—基础知识(1)

    本文链接:https://www.haomeiwen.com/subject/ijaiwttx.html