Ios Objective-C生成UUID

Ios Objective-C生成UUID,ios,Ios,编辑:使用所选答案是最好的方式,请忽略此问题。我写这篇文章是为了迎合堆栈溢出字符限制…在Obj-C中获取UUID的最简单方法是使用UUID类: function b( a // placeholder ){ return a // if the placeholder was passed, return ? ( // a random number from 0 to 15 a ^

编辑:使用所选答案是最好的方式,请忽略此问题。我写这篇文章是为了迎合堆栈溢出字符限制…

在Obj-C中获取UUID的最简单方法是使用UUID类:

function b(
  a                  // placeholder
){
  return a           // if the placeholder was passed, return
    ? (              // a random number from 0 to 15
      a ^            // unless b is 8,
      Math.random()  // in which case
      * 16           // a random number from
      >> a/4         // 8 to 11
      ).toString(16) // in hexadecimal
    : (              // or otherwise a concatenated string:
      [1e7] +        // 10000000 +
      -1e3 +         // -1000 +
      -4e3 +         // -4000 +
      -8e3 +         // -80000000 +
      -1e11          // -100000000000,
      ).replace(     // replacing
        /[018]/g,    // zeroes, ones, and eights with
        b            // random hex digits
      )
}

按下面的方法做。您可以将其添加为实用程序API-

NSUUID *uuid = [NSUUID UUID];
NSString *str = [uuid UUIDString];

“使用相同的功能”是什么意思?你想从ObjC调用JS代码,将函数重写为ObjC,还是在Cocoa框架中找到一个等价的函数?@JoshCaswell我想在ObjC中重写函数。我会更新这个问题。所以不是“重写我的代码”plz服务。也不是“重写我的代码”服务,叫BryanChen是个混蛋,这让你投了反对票,还得到了主持人的标志。你知道我如何重新创建上面的确切功能吗?我很感激。@ColeRoberts
nsuid
符合RFC4122版本4,并且是用随机字节创建的,这将是一个不同的问题。您应该创建一个新线程或编辑当前问题。我的Javascript不够好,无法逐字翻译。很抱歉
+ (NSString *)uniqueIdForObject
{
 CFUUIDRef uniqueString = CFUUIDCreate(NULL);
 CFStringRef isString = CFUUIDCreateString(NULL, uniqueString);
 CFRelease(uniqueString);
 return (NSString *) isString;
}