美文网首页
JS的常用语法

JS的常用语法

作者: 攻克乃还_ | 来源:发表于2017-10-09 06:53 被阅读22次

位置

  • haeder内
  • body内
  • 页外
    <script src="js/index.js">

一.输出

<script type="text/javascript"> 
    console.log('你好,调试'); 
</script>

二.声明变量

  • 自动推导类型
 var age = 18; // number
 var money = 100.88; // number
 var name = 'jack'; // string
 var result = true; // boolean false
 var number = null; // object
 var number2 = undefined; // undefined

三.输出变量的真实类型:typeof

console.log(typeof age);

四.字符串的拼接

  • 从左往右进行运算,任意类型的变量与string类型变量拼接都会变为string类型
 var str1 = 10 + 10 + '10'; //2010
 var str2 = '10' + 10 + 10; // 101010
 var str3 = (10 + '10') + 10; // 101010

五.数组

  • 创建数组
 var numbers = [-10, 'san', name, result, number, ['哈哈', '呵呵']];
  • 遍历数组
for(var i=0; i<numbers.length; i++){
     console.log(numbers[i]);
}
for(var i in numbers){
     console.log(i, numbers[i]);
}
  • 删除数组中最后一个数据项
numbers.pop();
  • 添加数据项在最后一个索引的后面
numbers.push('小燕子');

六.JS常用的类库 Math

// 选出其中最大值
var maxNum = Math.max(10,21,21);
// 选出数组中最小值
var numsArr = [10, 212, 3223, 32];
var NewMaxNum = Math.min.apply(this, numsArr);

七.函数

  • 声明函数
// 加法函数
function sum(num1, num2) {
    return num1 + num2;
}
  • 调用函数
var result = sum(12, 323);
  • 匿名函数
// 必须有变量接收
var res = function () {
    console.log('我是匿名函数');
}
res();

八.对象

  • this所在的函数属于哪个对象, this就代表这个对象
  • 创建对象
var dog = {
    name: 'ahuang',
    age: 18,
    height: 1.55,
    dogFriends: ['lili', 'wangcai'],
    eat: function (someThing) {
        console.log(this.name + '吃' + someThing);
    },
    run: function (someWhere) {
        console.log(this.name +'跑' + someWhere);
    }
}; 
  • 获取对象属性和行为
// 2.输出狗对象的属性和行为
console.log(dog.name, dog.age);
dog.eat('五花肉');
dog.run('操场');

九.构造函数

  • 普通函数的不同用法就是构造函数了
// 普通函数 -> 构造函数
var Dog = function () {
    console.log('这个一个普通函数');
}
// 普通调用
Dog();
// 构造调用
var dog1 = new Dog();
var dog2 = new Dog();
console.log(dog1, dog2);

十.内置对象

10.1.WINDOW
  • 所有全局的变量都是window的属性
  • 所有的全局函数都是window的方法
// 全局的变量
var age = 17;
console.log(window.age);
// 全局的函数
function Dog() {
    var name = '张三';
         console.log(name);
}
Dog();
window.Dog();
window.alert('哈哈');
window.console.log('全局的');
  • 动态的跳转
window.location.href = 'http://www.baibu.com';
10.2.DOCUMENT :对获取到的标签进行CRUD
  • 动态写入标签(增)
document.write('你好,世界!');
document.write('<input type="file">');
var img = document.createElement('img');
img.src = 'image/img_01.jpg';
main.appendChild(img);
  • 对获取到的标签进行删除(删)
img.remove();
  • 对获取到的标签进行修改(改)
btn.innerText == '隐藏';
p.style.display = 'none';
icon.style.display = 'none';
  • 动态获取网页中所有的标签(查)
// getElementBy..四种方式()
var icon = document.getElementsByClassName('icon')[0];
var p = document.getElementById('word');
var btn = document.getElementsByTagName('button')[0];
// childNodes查找子节点的方式
console.log(main.childNodes);

十一.定时器

  • 设置定时器
var timer = setInterval(function () {
   // 改变倒计时的数字
   number.innerText -= 1;
   if (number.innerText == 0){
        // 清除定时器
        clearInterval(timer);
   }
}, 1000);

十二.常见事件

页面加载完毕

window.onload = function() {}

输入框获得焦点

input.onfocus = function () {
    input.style.width = '500px';
    input.style.height = '60px';
}

鼠标操作

// 鼠标进入图片
img.onmouseover = function() {
     console.log('进入图片');
}
// 鼠标在图片上移动
img.onmousemove = function () {
     console.log('在图片上移动');
}
// 鼠标离开图片
img.onmouseout = function () {
     console.log('离开图片');
}

十三.Bootstrap

  • Bootstrap 是最受欢迎的 HTML、CSS 和 JS 框架,有很多写好的组件,CSS样式,JS插件
  • Bootstrap中文网 中下载框架
  • 点击 Bootstrap3中文文档 查看使用代码

十四.实战举例:

  • 如果是字符串,根据字符串取出元素。不是字符串返回原值。
function $(id) {
    return typeof id === 'string' ? document.getElementById(id) : id;   
}
  • 求出盒子的宽度
var boxWidth = allBox[0].offsetWidth;
  • 求出浏览器的宽度
var screenWidth = document.body.offsetWidth;
  • 父标签居中
//先设置宽度,再设置margin
$(parent).style.width = boxWidth * cols + 'px';
$(parent).style.margin = '0 auto';
  • 求出单独盒子的高度
var boxHeight = allBox[i].offsetHeight;
  • 头部偏离位置
.offsetTop
  • 求出浏览器的高度 标准模式 和 混杂模式
var screenHeight = document.body.clientHeight || document.documentElement.clientHeight;
  • 页面偏离屏幕的高度
var scrollTopHeight = document.body.scrollTop;
  • 给父标签添加子标签
$('main').appendChild(newBox);
  • CSS3实现瀑布流布局
/*多栏布局: 设置栏宽度*/
-webkit-column-width: 202px;
-moz-column-width:202px;
column-width:202px;

相关文章

  • JavaScript数组常用方法

    目录 JS 数组常用API常用属性常用方法常见方法语法解释from方法isArrayconcateveryfill...

  • es5与es6常用语法教程(4)

    js常用语法系列教程如下 es5与es6常用语法教程(1) es5与es6常用语法教程(2) es5与es6常用语...

  • es5与es6常用语法教程(2)

    js常用语法系列教程如下 es5与es6常用语法教程(1) es5与es6常用语法教程(2) es5与es6常用语...

  • es5与es6常用语法教程(3)

    js常用语法系列教程如下 es5与es6常用语法教程(1) es5与es6常用语法教程(2) es5与es6常用语...

  • es5与es6常用语法教程(5)

    js常用语法系列教程如下 es5与es6常用语法教程(1) es5与es6常用语法教程(2) es5与es6常用语...

  • es5与es6常用语法教程(6)

    js常用语法系列教程如下 es5与es6常用语法教程(1) es5与es6常用语法教程(2) es5与es6常用语...

  • es5与es6常用语法教程(7)

    js常用语法系列教程如下 es5与es6常用语法教程(1) es5与es6常用语法教程(2) es5与es6常用语...

  • React Native

    1、基本常用JS语法:https://www.jianshu.com/p/49a2f6d04de4; 2、语法指南...

  • iOS中WKWebView和Native交互

    前言 了解本文之前需要准备JS和WebView的一些基础知识,需要知道JS的基本语法和WebView调用JS的常用...

  • chai.js单元测试

    chai.js 单元测试 BDD/TDD assert库 chai.js有三种语法,我们使用expect,常用写法...

网友评论

      本文标题:JS的常用语法

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