js基础第六天

作者: LIT乐言 | 来源:发表于2017-11-25 00:50 被阅读0次

01-js对象

  • 1.对象由花括号分隔。在括号内部,对象的属性以名称和值对的形式 (name : value) 来定义。属性由逗号分隔:

      var person={name:"coderYJ", age:18};
    
  • 还可以这样声明

       var person={
      name : "coderYJ",
      age:18
      };
    
  • 对象属性有两种寻址方式:

    • 如果用 . 来访问对象里面的值,这个名称必须是对象里面的属性,如果不是就访问不到

    • 如果用 [] 来访问,[]里面的可以是一个变值

        var name=person.name;
        var name=person["name"];
      
  • 2.js对象的遍历

      var person = {name:"coderYJ", age:18};
      // 采用增强for循环来遍历js对象
      for(var k in person){
          console.log(k);
          console.log(person[k]);
      }
    

02-根据js对象动态设置属性

// 1.获取标签
var box = document.getElementById('box');

// 2.设置属性
//    box.style.width = '200px';
//    box.style.height = '200px';
//    box.style.background = 'red';
// 网络返回数据
var attr = {width:'200px',height:'200px',background:'yellow'};

// 动态设置
for(var k in attr){
    box.style[k] = attr[k];
}

03-json动态创建节点

  • 1.JSON 是 JS 对象的字符串表示法,它使用文本表示一个 JS 对象的信息,本质是一个字符串。

      // 1.json数据
      var data = {
          "box":[
              {"name":"张三","age":18,"sex":"男"},
              {"name":"李四","age":19,"sex":"女"},
              {"name":"王五","age":20,"sex":"男"},
              {"name":"王五","age":20,"sex":"女"}
          ]
      };
      // 2.去除数据
      var dataArray = data['box'];
    
      var obody = document.body;
    
      // 3.设置数据
      for(var i = 0; i<dataArray.length; i++){
          // 3.1创建元素
          var div = document.createElement('div');
          obody.appendChild(div);
          var ul = document.createElement('ul');
          div.appendChild(ul);
    
          // 3.2取出数据
          var json = dataArray[i];
          for(var k in json){
              var li = document.createElement('li');
              ul.appendChild(li);
              li.innerHTML = k + ":" +  json[k];
          }
      }
    

04-设置节点的第二种方法

<div id="box" title="123" abcd="456"></div>
var box = document.getElementById('box');
// 预先绑定的属性
//    box.setAttribute('title','123');

// 绑定类名
//    box.className = 'box';
/*
第一个参数是要绑定的属性名称
第二个参数是要绑定属性值
* setAttribute()
* */
box.setAttribute('class','box');

// 获取属性
console.log(box.getAttribute('title'));
console.log(box.getAttribute('abcd'));

05-常用的方法抽取

function $(id) {
    return document.getElementById(id);
}
function getEleTagName(dom,tagName) {
    return dom.getElementsByTagName(tagName);
}
// 遍历dom
function each(dom,fn) {
    for(var i = 0; i<dom.length; i++){
//            console.log(btns[i].innerHTML);
        // 要做的事情我们并不知道,所以需要外界决定
        fn(dom[i],i);
    }
}
// 使用函数
each(btns,function (obj,i) {
    console.log(obj.innerHTML);
    console.log(i);
});
  • 抽取js工具类

      function $(id) {
          return document.getElementById(id);
      }
      function getEleTagName(dom,tagName) {
          return dom.getElementsByTagName(tagName);
      }
      // 遍历dom
      function each(dom,fn) {
          for(var i = 0; i<dom.length; i++){
      //            console.log(btns[i].innerHTML);
              // 要做的事情我们并不知道,所以需要外界决定
              fn(dom[i],i);
          }
      }
    

07-事件对象的认识

  • 当触发事件的时候系统会在事件指令中传入事件对象,这个事件对象包含了所有与事件有关的信息。所有浏览器都支持event对象,但支持的方式不同。 普通浏览器支持 event IE 678 支持 window.event


    80501-106.jpg

相关文章

  • js基础第六天

    01-js对象 1.对象由花括号分隔。在括号内部,对象的属性以名称和值对的形式 (name : value) 来定...

  • React-Native 随笔

    学习基础: js的基础知识, rect.js基础 JSX语法基础 FlexBox布局 安装 安装node.js下载...

  • 最新web前端相关课程学习链接

    js基础篇 js进阶篇 js高级篇 vue基础篇 vue高级篇 react基础 react高级 Nodejs基础 ...

  • web前端 -- Day23 js高级

    js基础 JavaScript简称:JS JS分三个部分: ECMAScript标准---基础的语法 DOM D...

  • 前端JavaScript面试技巧

    1-1 课程概述 要做什么?——讲解前端 JS 基础面试题 哪些部分?——JS 基础,JS-WEB-API,JS ...

  • 4/07day28_js基础

    day28_js基础 回顾 JS基础语法 JS运算符 JS流程控制语句 条件语句 JS的条件语句和Java语法基本...

  • 2018-12-20

    1.01.尚硅谷_JS基础_JS简介(1) 10.10.尚硅谷_JS基础_Null和Undefined(10) 1...

  • JS基础和WebAPIs的关联性

    学习ECMAscript标准规定的基本语法掌握JS基础语法只学习JS基础做不了网页交互效果学习JS基础语法是为了后...

  • 2019-07-27 前端面试题

    1.js的基础类型 js的基础类型包括 Undefined , Null , String ,Number ,...

  • 网络编程(十九) JavaScript(9)

    一、 JS的组成 1.1 JS基础阶段以及Web APIs阶段 【1】JS基础阶段 我们学习的生死ECMAScri...

网友评论

    本文标题:js基础第六天

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