欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

深入JavaScript之基础应用

程序员文章站 2023-12-23 14:43:04
...
这次给大家带来深入JavaScript之基础应用,使用JavaScript基础应用的注意事项有哪些,下面就是实战案例,一起来看一下。

函数返回值

返回值1

<script>function show(){    return 'advb';
}var a=show();
alert(a); // 结果: advb</script>

返回值2

<script>function show(a, b){    return a+b;
}
alert(show(3, 5));</script>

返回值3

<script>function show(a, b){    //return; //没有return}
alert(show(3, 5));  //结果 : undefined</script>
<script>function show(a, b){    return; //没有return任何东西}
alert(show(3, 5));  //结果 : undefined</script>

一般求和

<script>function sum(a, b){    return a+b;
}
alert(sum(12, 6));</script>

多个参数求和 (arguments 是一个可变数组 )

<script>
    function sum()    {        //arguments 是一个可变数组 
        var result=0;        for(var i=0;i<arguments.length;i++)
        {
            result+=arguments[i];
        }        return result;
    }
    alert(sum(12, 6, 8, 6, 8, 6, 8)); //结果 : 54</script>```

- CSS函数 当传入两个参数时获取属性 , 三个参数时,修改样式

<html>
<head>
<meta charset="utf-8">
<title>CSS函数</title>
<script>
function css(obj, name, value)
{
if(arguments.length==2) //获取
{
return obj.style[name];
}
else
{
obj.style[name]=value; //修改
}
}
window.onload=function ()
{
var oDiv=document.getElementById('div1');
//alert(css(oDiv, 'width')); //获取到宽度 200px
css(oDiv, 'background', 'green'); //修改背景颜色为绿色
};
</script>
</head>
<body>
<div id="div1" style="width:200px; height:200px; background:red;">
</div>
</body>
</html>
function getStyle(obj, name)
{if(obj.currentStyle) //由于currentStyle只兼容IE,所以在IE浏览器中他是true,其他浏览器中为false
{
return obj.currentStyle[name]; //IE
}
else
{    //计算样式 其中getComputedStyle(oDiv, xxx) 第二个参数可以随便填,一般习惯写false
return getComputedStyle(obj, false)[name];  //Chrome、FF
}
}

示例代码:
通过上面的函数来获取非行间样式 `backgroundColor`

window.onload=function (){var oDiv=document.getElementById('div1');
alert(getStyle(oDiv, 'backgroundColor'));
};

###注意<a>此函数只适用于单一样式,复合样式不适用!!!</a>
单一样式:width、height、position 等
复合样式:background、border 等
>###3.数组- 数组基础
- 数组的使用
定义

var arr=[12, 5, 8, 9]; //一般用这种创建方式,简单
var arr=new Array(12, 5, 8, 9); //也可以这样创建

没有任何差别,[]的性能略高,因为代码短

- 数组的属性
length

既可以获取,又可以设置 :①.可以获取数组的个数,②.又可以用过array.length = 1;来设置数组的个数;
例子:快速清空数组 //用过array.length = 0;来清空数组;
数组使用原则:数组中应该只存一种类型的变量

- 数组的方法
添加

push(元素),从尾部添加一个元素

unshift(元素),从头部添加一个元素

删除

pop(),从尾部删除一个元素
shift(),从头部删除一个元素

- 插入、删除`splice` (`音标:[splaɪs]`) : 数组的万能操作
删除

splice(开始,长度) //第一个参数:指定位置;第二个参数:指定长度

插入

splice(开始, 0, 元素…)

先删除,后插入

splice(开始, 长度,元素…)
先删除,后插入

替换

先删除,后插入 可用作替换

- 数组连接 (两个数组合并) :concatconcat(数组2)
连接两个数组

<script>
var a = [1,2,3];
var b = [4,5,6];
alert(a.concat(b)); 结果:[1,2,3,4,5,6];
alert(b.concat(a)); 结果:[4,5,6,1,2,3];
</script>

- join(分隔符)
用分隔符,组合数组元素,生成字符串 (学习ajax时,连接网址使用)

<script>
var arr = [1,2,3,4];
alert(arr.join('-')) //1-2-3-4
alert(arr.join('- -p')) //1- -p2- -p3- -p4
</script>

- 字符串split (`[splɪt]`分离;分解)split() 方法用于把一个字符串分割成字符串数组。stringObject.split(separator,howmany)

separator 必需。字符串或正则表达式,从该参数指定的地方分割 stringObject。
howmany 可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。

使用

如果您希望把单词分割为字母,或者把字符串分割为字符,可使用下面的代码:

"hello".split("")   //可返回 ["h", "e", "l", "l", "o"]


若只需要返回一部分字符,请使用 howmany 参数:

"hello".split("", 3)    //可返回 ["h", "e", "l"]

- 排序 sort`sort([比较函数])`,排序一个数组
排序一个字符串数组
排序一个数字数组
① 排序一个字符串数组

<script>
var arr=['float', 'width', 'alpha', 'zoom', 'left'];
arr.sort();
alert(arr); //结果 ['alpha','float','left','width','zoom']
</script>

②排序一个数字数组 - 2.1 基础版

<script>
var arr=[12, 8, 99, 19, 112];
arr.sort();
alert(arr); //结果: [112,12,19,8,99] //其实他把数字当成字符串来排序了
</script>

- 2.1 晋级版

<script>
var arr=[12, 8, 99, 19, 112];
arr.sort(function (n1, n2){
if(n1<n2)
{
return -1;//只要是个负数就可以 -2,-7等都可以
}
else if(n1>n2)
{
return 1; //只要是个正数就够了
}
else
{
return 0;
}
});
alert(arr); //结果:[8,12,19,99,112]
</script>

- 2.2最终版 (由2.1进化而来)

<script>var arr=[12, 8, 99, 19, 112];
arr.sort(function (n1, n2){    return n1-n2; //若果n1>n2,为正;如果n1<n2,为负;如果相等,则为0;});alert(arr);//结果:[8,12,19,99,112]
</script>

相信看了本文案例你已经掌握了方法,更多精彩请关注其它相关文章!

推荐阅读:

HTML与CSS中背景相关属性

JS的8个必须注意的基础知识

以上就是深入JavaScript之基础应用的详细内容,更多请关注其它相关文章!

上一篇:

下一篇: