美文网首页H5深究JavaScript
JavaScript:OC的眼光,不一样的数据类型和函数

JavaScript:OC的眼光,不一样的数据类型和函数

作者: 神经骚栋 | 来源:发表于2016-11-09 16:21 被阅读260次

    前言


    作为一个iOS开发者,我觉得对于JavaScript入门还是并不是太困难,当然了,这只是入门而已,我们就从入门开始搞事.

    JavaScript的开始


    JavaScript作为一种轻量级的脚本语言,JavaScript是不会做类似于OC预编译的工作,我们需要把代码放入<script> 标签之中,<script> 标签我们一般是放在<body>标签之后,这只是我的习惯而已.
    上一篇文章我们做了一个标签,现在我们通过一个简单的语句对标签的文本进行修改.对此,我们需要给标签添加一个id,类似于标识符的东东.标识符,这个要稍微解释了一下,如果一个网页,那么多HTML元素,没有标识符,我们怎么知道我们要对哪一个元素作操作呢,所以标识符是必备的元素.代码如下.

                <p id = 'label'>HelloWorld</p>
    

    然后我们在<script >标签中整上如下代码.document代表着当前的html文件,然后我们通过getElementById()这个方法找到对应的元素,通过innerHTML进行赋值.由于代码是顺序执行的,所以标签最后显示的是骚栋,要开始搞事了!,而不是先前的HelloWorld.

        <script >
            document.getElementById("label").innerHTML ="骚栋,要开始搞事了!";
        </script>
    

    整体代码如下.

    <!DOCTYPE html>
    <html>
        
        <head>
            <meta charset="utf-8" />
            <title>骚栋的世界</title>
        </head>
        
        <body>
                <p id = 'label'>HelloWorld</p>
    
        </body>
        <script >
            document.getElementById("label").innerHTML ="骚栋,要开始搞事了!";
        </script>
        
    </html>
    

    效果图如下所示.

    JavaScript的基本数据类型


    下面所有示例均在<script>标签中进行的.

    上面我们已经说过JavaScript的基本使用了,接下来我觉得应该说说JavaScript的所包含的基本数据类型,下面我先列一个JavaScript与OC的数据类型对照表.方便大家参照搞事.

    JavaScript Object-C
    字符串 NSString
    数字 NSNumber
    布尔值 BOOL
    数组 NSArray
    对象 NSDictionary
    Undefined 和 Null NSNULL

    其实JavaScript作为一个弱语言,真心很弱很简单(当然弱却不代表JavaScript就是弱鸡语言,这恰恰相反,要不为什么H5会这么受欢迎?),为什么这么说呢,JavaScript可以做各种类型推导,一个变量可能各种数据类型各种变,一个var就各种变量各种表示,比如我们下面一个变量.然后就可以各种玩了.😂😂😂

            var obj;//定义一个变量
            obj = 1;//先赋值个数字类型玩玩
            obj = "你好";//再赋值个字符串类型玩玩
    
    
    JavaScript字符串

    JS中字符串可以是引号中的任意文本。JS中可以使用单引号或双引号.但我们在OC中定义一个字符串是需要区分是否有可变以及不可变,这是必须的操作,因为手机的内存本来就小,节约使用也是可以理解的,但是在JavaScript就简单粗暴多了,管你可变不可变,先定义再说,两者比较定义如下所示.

        //OC的可变和不可变的字符串的定义
        NSMutableString *mutableString = [[NSMutableString alloc]init];
        
        NSString *sting = @"你好,JS的世界";
    
            var objString = "你好,OC的世界";
            var helloString = 'hello,OC';
    
    JavaScript数字

    JavaScript数字是没有整形和浮点型之分的,只有一种类型.OC的数字类型初始化的时候相对来说比较麻烦.

    //OC
      NSNumber *firstNumber = [[NSNumber alloc]initWithInt:10];
    
    
    var firstNumber = 10;
    var secondNumber = 20e4;//科学计数法
    
    JavaScript布尔值

    JavaScript的布尔值是truefalse.OC的布尔值那就可以就真的是五花八门了,YESNO,0和1或者是truefalse.

        //OC
        BOOL result = YES;
    
            var boolOfYes = false;
            var boolOfNo = true;
    
    JavaScript数组

    与其他类型相似,在JavaScript并没有可变数组和非可变数组之分,只有一种数组类型.

        //OC
        NSArray *array = @[@"1",@"2",@"3"];//不可变数组
        NSMutableArray *mutableArray = [NSMutableArray array];//可变数组
    
            var newArray = new Array;
            newArray[0] = 1;
            newArray[1] = 2;
            newArray[2] = 3;
            
    
    JavaScript对象

    JavaScript对象并不是OC中常说的对象,而是OC中的字典类型.想要获取对象中的某一个

        //OC
        NSDictionary *dic = @{
                              @"name":@"saodong",
                              @"age":@"18",
                              @"gender":@"man"
                              };
        NSMutableDictionary *mutableDic = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"saodong",@"name", nil];
    
            var obj = {name:'saodong',age:'18',gender:'man'};
            var peopleName = obj.name;
    
    
    JavaScript的Undefined 和 Null

    其中Undefined 这个值表示变量不含有值,可以通过将变量的值设置为 null 来清空变量。

            var newNumber;//现在newNumber的值就是Undefined
            newNumber = null;//这样代表把变量的值清空了.
    

    JavaScript的函数形式


    相比于OC中的方法,JavaScript的形式如下所示.

    比如我们如下代码修改标签的文本.

        <body>
    
            <p id='label'>HelloWorld</p>
    
        </body>
        <script>
        
            var firstString;
    
            function myAction  (   wordString  ) {
    
                firstString = wordString;
    
                return firstString;
            }
            
            document.getElementById("label").innerHTML = myAction('又是崭新的一天');
        </script>
    

    效果图如下.

    结束


    好了,这篇关于JavaScript的数据类型和函数相关的文章就要到这了,下一篇文章将要对JavaScript的对象类型做一下解释.如果有任何问题,作为小白的我欢迎大家来交流批评.

    相关文章

      网友评论

      • 萌小菜:敢问楼主搞事啥意思?
        萌小菜:@神经骚栋 好吧,我貌似懂点了。。。
        神经骚栋:@萌小菜 请来帝都,我们可以面面基搞搞事..
      • 淡若烟::joy:之前开发软件鼓捣了好久……导致我学习的脚步停止了……
        神经骚栋: @淡若烟 ...厉害了,我的姐

      本文标题:JavaScript:OC的眼光,不一样的数据类型和函数

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